/branches/network/uspace/srv/net/include/ip_client.h |
---|
42,6 → 42,8 |
#include "../structures/packet/packet.h" |
#include "ip_codes.h" |
#include "ip_interface.h" |
#include "socket_codes.h" |
int ip_client_prepare_packet( packet_t packet, ip_protocol_t protocol, ip_ttl_t ttl, ip_tos_t tos, int dont_fragment, size_t ipopt_length ); |
54,6 → 56,14 |
*/ |
size_t ip_client_header_length( packet_t packet ); |
/** \todo |
*/ |
int ip_client_set_pseudo_header_data_length( ip_pseudo_header_ref header, size_t headerlen, size_t data_length ); |
/** \todo |
*/ |
int ip_client_get_pseudo_header( ip_protocol_t protocol, struct sockaddr * src, socklen_t srclen, struct sockaddr * dest, socklen_t destlen, size_t data_length, ip_pseudo_header_ref * header, size_t * headerlen ); |
// TODO ipopt manipulation |
#endif |
/branches/network/uspace/srv/net/include/crc.h |
---|
84,10 → 84,17 |
*/ |
uint16_t compact_checksum( uint32_t sum ); |
/** Returns or flips the checksum if zero. |
* @param checksum The computed checksum. Input parameter. |
* @returns The internet protocol header checksum. |
* @returns 0xFFFF if the computed checksum is zero. |
*/ |
uint16_t flip_checksum( uint16_t checksum ); |
/** Computes the ip header checksum. |
* To compute the checksum of a new packet, the checksum header field must be zero. |
* To check the checksum of a received packet, the checksum may be left set. |
* The zero (0) value will returned in this case if valid. |
* The zero (0) value will be returned in this case if valid. |
* @param data The header data. Input parameter. |
* @param length The header length in bytes. Input parameter. |
* @returns The internet protocol header checksum. |
/branches/network/uspace/srv/net/include/ip_interface.h |
---|
49,6 → 49,8 |
#include "../structures/packet/packet.h" |
#include "in.h" |
#include "ip_codes.h" |
#include "socket_codes.h" |
/** @name IP module interface |
* This interface is used by other modules. |
55,6 → 57,10 |
*/ |
/*@{*/ |
/** Type definition of the internet pseudo header pointer. |
*/ |
typedef void * ip_pseudo_header_ref; |
/** The transport layer notification function type definition. |
* Notifies the transport layer modules about the received packet/s. |
* @param device_id The device identifier. Input parameter. |
153,6 → 159,10 |
*/ |
int ip_received_error_msg( int ip_phone, device_id_t device_id, packet_t packet, services_t target, services_t error ); |
/** \todo |
*/ |
int ip_get_route_req( int ip_phone, ip_protocol_t protocol, const struct sockaddr * destination, socklen_t addrlen, device_id_t * device_id, ip_pseudo_header_ref * header, size_t * headerlen ); |
/*@}*/ |
#endif |