DataMuseum.dk

Presents historical artifacts from the history of:

Regnecentalen RC-900

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Regnecentalen RC-900

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦548afd0f9⟧ TextFile

    Length: 2908 (0xb5c)
    Types: TextFile
    Notes: Uncompressed file

Derivation

└─⟦0f0f313e4⟧ Bits:30004764 SW95709I.2F TCP/IP Update 1
└─⟦0f0f313e4⟧ UNIX Filesystem
    └─⟦772ddfe97⟧ »SSU.4a/new/usr/include/net/if_arp.h.Z« 
        └─⟦this⟧ 

TextFile

/*
 * Copyright (c) 1986 Regents of the University of California.
 * All rights reserved.  The Berkeley software License Agreement
 * specifies the terms and conditions for redistribution.
 *
 *	@(#)if_arp.h	7.1 (Berkeley) 6/4/86
 */

#ifndef _h_IF_ARP
#define _h_IF_ARP
#ident "@(#)if_arp.h	2.2 - 90/02/08"

/*
 * Address Resolution Protocol.
 *
 * See RFC 826 for protocol description.  ARP packets are variable
 * in size; the arphdr structure defines the fixed-length portion.
 * Protocol type values are the same as those for 10 Mb/s Ethernet.
 * It is followed by the variable-sized fields ar_sha, arp_spa,
 * arp_tha and arp_tpa in that order, according to the lengths
 * specified.  Field names used correspond to RFC 826.
 */
struct	arphdr {
	u_short	ar_hrd;		/* format of hardware address */
	u_short	ar_pro;		/* format of protocol address */
	u_char	ar_hln;		/* length of hardware address */
	u_char	ar_pln;		/* length of protocol address */
	u_short	ar_op;		/* one of: */
#define	ARPOP_REQUEST	1	/* request to resolve address */
#define	ARPOP_REPLY	2	/* response to previous request */
/*
 * The remaining fields are variable in size,
 * according to the sizes above.
 */
/*	u_char	ar_sha[];	/* sender hardware address */
/*	u_char	ar_spa[];	/* sender protocol address */
/*	u_char	ar_tha[];	/* target hardware address */
/*	u_char	ar_tpa[];	/* target protocol address */
};

/*
 * ARP ioctl request for SIOCSARP, SIOCDARP and SIOCGARP ioctl's
 */
struct arpreq {
	struct	sockaddr arp_pa;		/* protocol address */
	struct	sockaddr arp_ha;		/* hardware address */
	int	arp_flags;			/* flags */
};
/*  arp_flags and at_flags field values */
#define	ATF_INUSE	0x01	/* entry in use */
#define ATF_COM		0x02	/* completed entry (enaddr valid) */
#define	ATF_PERM	0x04	/* permanent entry */
#define	ATF_PUBL	0x08	/* publish entry (respond for other host) */
#define	ATF_USETRAILERS	0x10	/* set has requested trailers */
#define ATF_LOCAL	0x100	/* address for this host */

/*
 * Arp timeout parameter request for SIOCGTIM and SIOCSTIM ioctl's
 */
 struct arptimtab {
	int arpt_interval;		/* interval between timer runs */
	int arpt_killcom;		/* timeout to kill a complete entry */
	int arpt_killinc;		/* timeout to kill an incomplete entry*/
};

/*
 * Arp indexed table entry request for SIOCGENT ioctl
 */
struct	arpent {
    int     ae_index;                   /* table index (returns length) */
    struct  in_addr ae_iaddr;           /* internet address */
    u_char  ae_timer;                   /* minutes since last reference */
    u_char  ae_flags;                   /* flags */
    u_char  ae_hwtype;                  /* hardware type from sys/sioctl.h */
    union {                             /* entry chosen by hardware type */
	unsigned char   addr_802[6];    /* 802-type addr (ether, tokenring, fddi) */
					/* ADD OTHERS AS THEY ARE NEEDED... */
   } ae_addr;
};
#endif /* _h_IF_ARP */