Changeset 8fb1bf82 in mainline for uspace/srv/net/tl/icmp/icmp.h
- Timestamp:
- 2010-11-25T13:42:50Z (13 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 8df8415
- Parents:
- a93d79a (diff), eb667613 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/net/tl/icmp/icmp.h
ra93d79a r8fb1bf82 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 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 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. 70 70 */ 71 71 INT_MAP_DECLARE(icmp_echo_data, icmp_echo_t); 72 72 73 /** ICMP reply data. 74 */ 75 struct icmp_reply{ 76 /** Reply result. 77 */ 73 /** ICMP reply data. */ 74 struct icmp_reply { 75 /** Reply result. */ 78 76 int result; 79 /** Safety lock. 80 */ 77 /** Safety lock. */ 81 78 fibril_mutex_t mutex; 82 /** Received or timeouted reply signaling. 83 */ 79 /** Received or timeouted reply signaling. */ 84 80 fibril_condvar_t condvar; 85 81 }; 86 82 87 /** ICMP global data. 88 */ 89 struct icmp_globals{ 90 /** IP module phone. 91 */ 83 /** ICMP global data. */ 84 struct icmp_globals { 85 /** IP module phone. */ 92 86 int ip_phone; 93 /** Packet dimension. 94 */ 87 /** Packet dimension. */ 95 88 packet_dimension_t packet_dimension; 96 /** Networking module phone. 97 */ 89 /** Networking module phone. */ 98 90 int net_phone; 99 /** Indicates whether ICMP error reporting is enabled. 100 */ 91 /** Indicates whether ICMP error reporting is enabled. */ 101 92 int error_reporting; 102 /** Indicates whether ICMP echo replying (ping) is enabled. 103 */ 93 /** Indicates whether ICMP echo replying (ping) is enabled. */ 104 94 int echo_replying; 105 /** The last used identifier number. 106 */ 95 /** The last used identifier number. */ 107 96 icmp_param_t last_used_id; 108 /** The budled modules assigned echo specific data. 109 */ 97 /** The budled modules assigned echo specific data. */ 110 98 icmp_echo_data_t echo_data; 111 /** Echo timeout locks. 112 */ 99 /** Echo timeout locks. */ 113 100 icmp_replies_t replies; 114 /** Safety lock. 115 */ 101 /** Safety lock. */ 116 102 fibril_rwlock_t lock; 117 103 }; … … 121 107 /** @} 122 108 */ 123
Note:
See TracChangeset
for help on using the changeset viewer.