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