Linux kernel & device driver programming

Cross-Referenced Linux and Device Driver Code

[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ]
Version: [ 2.6.11.8 ] [ 2.6.25 ] [ 2.6.25.8 ] [ 2.6.31.13 ] Architecture: [ i386 ]
  1 /* Definitions for Econet sockets. */
  2 
  3 #ifndef __LINUX_IF_EC
  4 #define __LINUX_IF_EC
  5 
  6 /* User visible stuff. Glibc provides its own but libc5 folk will use these */
  7 
  8 struct ec_addr
  9 {
 10   unsigned char station;                /* Station number.  */
 11   unsigned char net;                    /* Network number.  */
 12 };
 13 
 14 struct sockaddr_ec
 15 {
 16   unsigned short sec_family;
 17   unsigned char port;                   /* Port number.  */
 18   unsigned char cb;                     /* Control/flag byte.  */
 19   unsigned char type;                   /* Type of message.  */
 20   struct ec_addr addr;
 21   unsigned long cookie;
 22 };
 23 
 24 #define ECTYPE_PACKET_RECEIVED          0       /* Packet received */
 25 #define ECTYPE_TRANSMIT_STATUS          0x10    /* Transmit completed, 
 26                                                    low nibble holds status */
 27 
 28 #define ECTYPE_TRANSMIT_OK              1
 29 #define ECTYPE_TRANSMIT_NOT_LISTENING   2
 30 #define ECTYPE_TRANSMIT_NET_ERROR       3
 31 #define ECTYPE_TRANSMIT_NO_CLOCK        4
 32 #define ECTYPE_TRANSMIT_LINE_JAMMED     5
 33 #define ECTYPE_TRANSMIT_NOT_PRESENT     6
 34 
 35 #ifdef __KERNEL__
 36 
 37 #define EC_HLEN                         6
 38 
 39 /* This is what an Econet frame looks like on the wire. */
 40 struct ec_framehdr 
 41 {
 42   unsigned char dst_stn;
 43   unsigned char dst_net;
 44   unsigned char src_stn;
 45   unsigned char src_net;
 46   unsigned char cb;
 47   unsigned char port;
 48 };
 49 
 50 struct econet_sock {
 51   /* struct sock has to be the first member of econet_sock */
 52   struct sock   sk;
 53   unsigned char cb;
 54   unsigned char port;
 55   unsigned char station;
 56   unsigned char net;
 57   unsigned short num;
 58 };
 59 
 60 static inline struct econet_sock *ec_sk(const struct sock *sk)
 61 {
 62         return (struct econet_sock *)sk;
 63 }
 64 
 65 struct ec_device
 66 {
 67   unsigned char station, net;           /* Econet protocol address */
 68 };
 69 
 70 #endif
 71 
 72 #endif
 73 
  This page was automatically generated by the LXR engine.