blob: 36ec8827aafaced057e2568707cc513dade8c476 [file] [log] [blame]
/*
* lla.h for HP-UX 10.30 and above
*
* This header file defines the lla_cb structure for lsof. Lsof uses it to
* to read the Link Level Access (LLA) control block. Link level access means
* access to the network link layer access protocol -- e.g., Ethernet 802.5.
*
* V. Abell <abe@purdue.edu>
* February, 1998
*/
#if !defined(LSOF_LLA_H)
#define LSOF_LLA_H
#include "kernbits.h"
#include <sys/types.h>
#define LLA_IS_ETHER 0x1
#define LLA_FWRITE 0x100
#define LLA_FREAD 0x200
#define LLA_IS_8025 0x800
#define LLA_IS_SNAP8025 0x1000
#define LLA_IS_FA8025 0x4000
typedef struct lla_hdr {
union {
struct {
u_char destaddr[6];
u_char sourceaddr[6];
u_short length;
u_char dsap;
u_char ssap;
u_char ctrl;
u_char pad[3];
u_short dxsap;
u_short sxsap;
} ieee;
struct {
u_char destaddr[6];
u_char sourceaddr[6];
u_short log_type;
u_short dxsap;
u_short sxsap;
} ether;
struct {
u_char access_ctl;
u_char frame_ctl;
u_char destaddr[6];
u_char sourceaddr[6];
u_char rif_plus[26];
u_char dsap;
u_char ssap;
u_char ctrl;
u_char orgid[3];
u_short etype;
} snap8025;
struct {
u_char access_ctl;
u_char frame_ctl;
u_char destaddr[6];
u_char sourceaddr[6];
u_char rif_plus[26];
u_char dsap;
u_char ssap;
u_char ctrl;
} ieee8025;
} proto;
} lla_hdr_t;
typedef struct lla_cb {
KA_T so_pcb;
KA_T pktheader;
KA_T head_packet;
KA_T last_packet;
KA_T lla_ifp;
u_int lan_signal_mask;
u_int lan_signal_pid;
int lan_pkt_size;
int lla_timeo;
KA_T lla_rsel;
struct lla_hdr packet_header;
short lla_msgsqd;
short lla_maxmsgs;
u_short lla_flags; /* flags, including type -- i.e.,
* the LLA_* symbols defined above */
short hdr_size;
int func_addr;
KA_T lla_lock;
} lla_cb_t;
#endif