Changes in uspace/srv/net/il/arp/arp.h [e9caf47:849ed54] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/net/il/arp/arp.h
re9caf47 r849ed54 28 28 29 29 /** @addtogroup arp 30 * @{30 * @{ 31 31 */ 32 32 33 33 /** @file 34 * ARP module.34 * ARP module. 35 35 */ 36 36 37 #ifndef NET_ARP_H_38 #define NET_ARP_H_37 #ifndef __NET_ARP_H__ 38 #define __NET_ARP_H__ 39 39 40 40 #include <fibril_synch.h> … … 43 43 #include <ipc/services.h> 44 44 45 #include <net/device.h> 46 #include <net/packet.h> 45 #include <net_device.h> 47 46 #include <net_hardware.h> 48 47 #include <adt/generic_char_map.h> … … 50 49 #include <adt/measured_strings.h> 51 50 51 52 52 /** Type definition of the ARP device specific data. 53 * @see arp_device53 * @see arp_device 54 54 */ 55 typedef struct arp_device 55 typedef struct arp_device arp_device_t; 56 56 57 57 /** Type definition of the ARP device specific data pointer. 58 * @see arp_device58 * @see arp_device 59 59 */ 60 typedef arp_device_t * arp_device_ref;60 typedef arp_device_t * arp_device_ref; 61 61 62 62 /** Type definition of the ARP global data. 63 * @see arp_globals63 * @see arp_globals 64 64 */ 65 typedef struct arp_globals 65 typedef struct arp_globals arp_globals_t; 66 66 67 67 /** Type definition of the ARP protocol specific data. 68 * @see arp_proto68 * @see arp_proto 69 69 */ 70 typedef struct arp_proto 70 typedef struct arp_proto arp_proto_t; 71 71 72 72 /** Type definition of the ARP protocol specific data pointer. 73 * @see arp_proto73 * @see arp_proto 74 74 */ 75 typedef arp_proto_t * arp_proto_ref;75 typedef arp_proto_t * arp_proto_ref; 76 76 77 77 /** ARP address map. 78 * 79 * Translates addresses. 80 * @see generic_char_map.h 78 * Translates addresses. 79 * @see generic_char_map.h 81 80 */ 82 GENERIC_CHAR_MAP_DECLARE(arp_addr, measured_string_t) ;81 GENERIC_CHAR_MAP_DECLARE(arp_addr, measured_string_t) 83 82 84 83 /** ARP address cache. 85 * 86 * Maps devices to the ARP device specific data. 87 * @see device.h 84 * Maps devices to the ARP device specific data. 85 * @see device.h 88 86 */ 89 DEVICE_MAP_DECLARE(arp_cache, arp_device_t) ;87 DEVICE_MAP_DECLARE(arp_cache, arp_device_t) 90 88 91 89 /** ARP protocol map. 92 * 93 * Maps protocol identifiers to the ARP protocol specific data. 94 * @see int_map.h 90 * Maps protocol identifiers to the ARP protocol specific data. 91 * @see int_map.h 95 92 */ 96 INT_MAP_DECLARE(arp_protos, arp_proto_t) ;93 INT_MAP_DECLARE(arp_protos, arp_proto_t) 97 94 98 /** ARP device specific data. */ 99 struct arp_device { 100 /** Actual device hardware address. */ 95 /** ARP device specific data. 96 */ 97 struct arp_device{ 98 /** Actual device hardware address. 99 */ 101 100 measured_string_ref addr; 102 /** Actual device hardware address data. */ 103 char *addr_data; 104 /** Broadcast device hardware address. */ 101 /** Actual device hardware address data. 102 */ 103 char * addr_data; 104 /** Broadcast device hardware address. 105 */ 105 106 measured_string_ref broadcast_addr; 106 /** Broadcast device hardware address data. */ 107 char *broadcast_data; 108 /** Device identifier. */ 107 /** Broadcast device hardware address data. 108 */ 109 char * broadcast_data; 110 /** Device identifier. 111 */ 109 112 device_id_t device_id; 110 /** Hardware type. */ 113 /** Hardware type. 114 */ 111 115 hw_type_t hardware; 112 /** Packet dimension. */ 116 /** Packet dimension. 117 */ 113 118 packet_dimension_t packet_dimension; 114 /** Device module phone. */ 119 /** Device module phone. 120 */ 115 121 int phone; 116 117 /** 118 * Protocol map. 119 * Address map for each protocol. 122 /** Protocol map. 123 * Address map for each protocol. 120 124 */ 121 125 arp_protos_t protos; 122 123 /** Device module service.*/126 /** Device module service. 127 */ 124 128 services_t service; 125 129 }; 126 130 127 /** ARP global data. */ 128 struct arp_globals { 129 /** ARP address cache. */ 131 /** ARP global data. 132 */ 133 struct arp_globals{ 134 /** ARP address cache. 135 */ 130 136 arp_cache_t cache; 131 132 /** 133 * The client connection processing function. 134 * The module skeleton propagates its own one. 137 /** The client connection processing function. 138 * The module skeleton propagates its own one. 135 139 */ 136 140 async_client_conn_t client_connection; 137 138 /** Networking module phone.*/141 /** Networking module phone. 142 */ 139 143 int net_phone; 140 /** Safety lock. */ 144 /** Safety lock. 145 */ 141 146 fibril_rwlock_t lock; 142 147 }; 143 148 144 /** ARP protocol specific data. */ 145 struct arp_proto { 146 /** Actual device protocol address. */ 149 /** ARP protocol specific data. 150 */ 151 struct arp_proto{ 152 /** Actual device protocol address. 153 */ 147 154 measured_string_ref addr; 148 /** Actual device protocol address data. */ 149 char *addr_data; 150 /** Address map. */ 155 /** Actual device protocol address data. 156 */ 157 char * addr_data; 158 /** Address map. 159 */ 151 160 arp_addr_t addresses; 152 /** Protocol service. */ 161 /** Protocol service. 162 */ 153 163 services_t service; 154 164 };
Note:
See TracChangeset
for help on using the changeset viewer.