Rev 422 | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
422 | giacomo | 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_opt |
||
51 | { |
||
52 | unsigned char cb; |
||
53 | unsigned char port; |
||
54 | unsigned char station; |
||
55 | unsigned char net; |
||
56 | unsigned short num; |
||
57 | }; |
||
58 | |||
59 | #define ec_sk(__sk) ((struct econet_opt *)(__sk)->sk_protinfo) |
||
60 | |||
61 | struct ec_device |
||
62 | { |
||
63 | unsigned char station, net; /* Econet protocol address */ |
||
64 | }; |
||
65 | |||
66 | #endif |
||
67 | |||
68 | #endif |