Subversion Repositories HelenOS

Compare Revisions

Ignore whitespace Rev 4721 → Rev 4722

/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