Changes in uspace/srv/net/tl/icmp/icmp.h [849ed54:4e5c7ba] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/net/tl/icmp/icmp.h
r849ed54 r4e5c7ba 28 28 29 29 /** @addtogroup icmp 30 * 30 * @{ 31 31 */ 32 32 33 33 /** @file 34 * 34 * ICMP module. 35 35 */ 36 36 37 #ifndef __NET_ICMP_H__38 #define __NET_ICMP_H__37 #ifndef NET_ICMP_H_ 38 #define NET_ICMP_H_ 39 39 40 40 #include <fibril_synch.h> 41 41 42 #include <icmp_codes.h> 42 #include <net/icmp_codes.h> 43 #include <net/packet.h> 43 44 #include <adt/int_map.h> 44 45 #include <icmp_header.h> 45 46 46 47 /** Type definition of the ICMP reply data. 47 * 48 * @see icmp_reply 48 49 */ 49 typedef struct icmp_reply icmp_reply_t; 50 51 /** Type definition of the ICMP reply data pointer. 52 * @see icmp_reply 53 */ 54 typedef icmp_reply_t * icmp_reply_ref; 50 typedef struct icmp_reply icmp_reply_t; 55 51 56 52 /** Type definition of the ICMP global data. 57 * 53 * @see icmp_globals 58 54 */ 59 typedef struct icmp_globals 55 typedef struct icmp_globals icmp_globals_t; 60 56 61 57 /** Pending replies map. 62 * Maps message identifiers to the pending replies. 63 * Sending fibril waits for its associated reply event. 64 * Receiving fibril sets the associated reply with the return value and signals the event. 58 * 59 * Maps message identifiers to the pending replies. 60 * Sending fibril waits for its associated reply event. 61 * Receiving fibril sets the associated reply with the return value and signals 62 * the event. 65 63 */ 66 64 INT_MAP_DECLARE(icmp_replies, icmp_reply_t); 67 65 68 66 /** Echo specific data map. 69 * The bundle module gets an identifier of the assigned echo specific data while connecting. 70 * The identifier is used in the future semi-remote calls instead of the ICMP phone. 67 * 68 * The identifier is used in the future semi-remote calls instead of the ICMP 69 * phone. 71 70 */ 72 71 INT_MAP_DECLARE(icmp_echo_data, icmp_echo_t); 73 72 74 /** ICMP reply data. 75 */ 76 struct icmp_reply{ 77 /** Reply result. 78 */ 73 /** ICMP reply data. */ 74 struct icmp_reply { 75 /** Reply result. */ 79 76 int result; 80 /** Safety lock. 81 */ 77 /** Safety lock. */ 82 78 fibril_mutex_t mutex; 83 /** Received or timeouted reply signaling. 84 */ 79 /** Received or timeouted reply signaling. */ 85 80 fibril_condvar_t condvar; 86 81 }; 87 82 88 /** ICMP global data. 89 */ 90 struct icmp_globals{ 91 /** IP module phone. 92 */ 83 /** ICMP global data. */ 84 struct icmp_globals { 85 /** IP module phone. */ 93 86 int ip_phone; 94 /** Packet dimension. 95 */ 87 /** Packet dimension. */ 96 88 packet_dimension_t packet_dimension; 97 /** Networking module phone. 98 */ 89 /** Networking module phone. */ 99 90 int net_phone; 100 /** Indicates whether ICMP error reporting is enabled. 101 */ 91 /** Indicates whether ICMP error reporting is enabled. */ 102 92 int error_reporting; 103 /** Indicates whether ICMP echo replying (ping) is enabled. 104 */ 93 /** Indicates whether ICMP echo replying (ping) is enabled. */ 105 94 int echo_replying; 106 /** The last used identifier number. 107 */ 95 /** The last used identifier number. */ 108 96 icmp_param_t last_used_id; 109 /** The budled modules assigned echo specific data. 110 */ 97 /** The budled modules assigned echo specific data. */ 111 98 icmp_echo_data_t echo_data; 112 /** Echo timeout locks. 113 */ 99 /** Echo timeout locks. */ 114 100 icmp_replies_t replies; 115 /** Safety lock. 116 */ 101 /** Safety lock. */ 117 102 fibril_rwlock_t lock; 118 103 }; … … 122 107 /** @} 123 108 */ 124
Note:
See TracChangeset
for help on using the changeset viewer.