Moved the container management for ancillary data from the net_buffer

module to the stack module. There's a dedicated struct
ancillary_data_container, now. One can just set the container on a
net_buffer.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25292 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Ingo Weinhold
2008-05-02 14:37:16 +00:00
parent 110d4031fb
commit 49e00d1f99
10 changed files with 332 additions and 185 deletions
+5 -2
View File
@@ -16,6 +16,9 @@
#define LEVEL_DRIVER_IOCTL 0x0f000000
#define LEVEL_MASK 0x0fffffff
struct ancillary_data_container;
struct ancillary_data_header;
typedef struct net_protocol {
struct net_protocol *next;
struct net_protocol_module_info *module;
@@ -69,8 +72,8 @@ struct net_protocol_module_info {
status_t (*error_reply)(net_protocol *self, net_buffer *causedError,
uint32 code, void *errorData);
status_t (*attach_ancillary_data)(net_protocol *self, net_buffer *buffer,
const cmsghdr *header);
status_t (*add_ancillary_data)(net_protocol *self,
ancillary_data_container *container, const cmsghdr *header);
ssize_t (*process_ancillary_data)(net_protocol *self,
const ancillary_data_header *header, const void *data,
void *buffer, size_t bufferSize);