diff options
author | Tobias Brunner <tobias@strongswan.org> | 2012-07-06 16:40:46 +0200 |
---|---|---|
committer | Tobias Brunner <tobias@strongswan.org> | 2012-08-08 15:41:02 +0200 |
commit | 5764a9b355843c91c390008447672b567bdf54de (patch) | |
tree | 29339d806a265bbdd7bc19956f064203c7951bc5 /src | |
parent | 3320b87a626dffd76333825bf8227febc4b7606f (diff) | |
download | strongswan-5764a9b355843c91c390008447672b567bdf54de.tar.bz2 strongswan-5764a9b355843c91c390008447672b567bdf54de.tar.xz |
Moved packet_t to libstrongswan
Diffstat (limited to 'src')
-rw-r--r-- | src/libcharon/Android.mk | 2 | ||||
-rw-r--r-- | src/libcharon/Makefile.am | 2 | ||||
-rw-r--r-- | src/libcharon/encoding/message.h | 2 | ||||
-rw-r--r-- | src/libcharon/network/receiver.c | 2 | ||||
-rw-r--r-- | src/libcharon/network/receiver.h | 2 | ||||
-rw-r--r-- | src/libcharon/network/sender.h | 2 | ||||
-rw-r--r-- | src/libcharon/network/socket.h | 2 | ||||
-rw-r--r-- | src/libcharon/sa/ike_sa.h | 1 | ||||
-rw-r--r-- | src/libcharon/sa/ikev2/tasks/ike_mobike.h | 2 | ||||
-rw-r--r-- | src/libstrongswan/Android.mk | 2 | ||||
-rw-r--r-- | src/libstrongswan/Makefile.am | 7 | ||||
-rw-r--r-- | src/libstrongswan/utils/packet.c (renamed from src/libcharon/network/packet.c) | 11 | ||||
-rw-r--r-- | src/libstrongswan/utils/packet.h (renamed from src/libcharon/network/packet.h) | 60 |
13 files changed, 43 insertions, 54 deletions
diff --git a/src/libcharon/Android.mk b/src/libcharon/Android.mk index 5e93e235f..a4ac87182 100644 --- a/src/libcharon/Android.mk +++ b/src/libcharon/Android.mk @@ -44,7 +44,7 @@ encoding/payloads/vendor_id_payload.c encoding/payloads/vendor_id_payload.h \ encoding/payloads/hash_payload.c encoding/payloads/hash_payload.h \ kernel/kernel_handler.c kernel/kernel_handler.h \ network/receiver.c network/receiver.h network/sender.c network/sender.h \ -network/packet.c network/packet.h network/socket.c network/socket.h \ +network/socket.c network/socket.h \ network/socket_manager.c network/socket_manager.h \ processing/jobs/acquire_job.c processing/jobs/acquire_job.h \ processing/jobs/delete_child_sa_job.c processing/jobs/delete_child_sa_job.h \ diff --git a/src/libcharon/Makefile.am b/src/libcharon/Makefile.am index df23e22f6..cd2c9de14 100644 --- a/src/libcharon/Makefile.am +++ b/src/libcharon/Makefile.am @@ -42,7 +42,7 @@ encoding/payloads/vendor_id_payload.c encoding/payloads/vendor_id_payload.h \ encoding/payloads/hash_payload.c encoding/payloads/hash_payload.h \ kernel/kernel_handler.c kernel/kernel_handler.h \ network/receiver.c network/receiver.h network/sender.c network/sender.h \ -network/packet.c network/packet.h network/socket.c network/socket.h \ +network/socket.c network/socket.h \ network/socket_manager.c network/socket_manager.h \ processing/jobs/acquire_job.c processing/jobs/acquire_job.h \ processing/jobs/delete_child_sa_job.c processing/jobs/delete_child_sa_job.h \ diff --git a/src/libcharon/encoding/message.h b/src/libcharon/encoding/message.h index 6f3c7967f..6d558daf6 100644 --- a/src/libcharon/encoding/message.h +++ b/src/libcharon/encoding/message.h @@ -27,11 +27,11 @@ typedef struct message_t message_t; #include <library.h> -#include <network/packet.h> #include <encoding/payloads/ike_header.h> #include <encoding/payloads/notify_payload.h> #include <sa/keymat.h> #include <sa/ike_sa_id.h> +#include <utils/packet.h> #include <utils/linked_list.h> /** diff --git a/src/libcharon/network/receiver.c b/src/libcharon/network/receiver.c index 3a52f8dc3..b270d65df 100644 --- a/src/libcharon/network/receiver.c +++ b/src/libcharon/network/receiver.c @@ -22,12 +22,12 @@ #include <daemon.h> #include <network/socket.h> -#include <network/packet.h> #include <processing/jobs/job.h> #include <processing/jobs/process_message_job.h> #include <processing/jobs/callback_job.h> #include <crypto/hashers/hasher.h> #include <threading/mutex.h> +#include <utils/packet.h> /** lifetime of a cookie, in seconds */ #define COOKIE_LIFETIME 10 diff --git a/src/libcharon/network/receiver.h b/src/libcharon/network/receiver.h index 93b3d3c0c..9e8edee45 100644 --- a/src/libcharon/network/receiver.h +++ b/src/libcharon/network/receiver.h @@ -26,8 +26,8 @@ typedef struct receiver_t receiver_t; #include <library.h> -#include <network/packet.h> #include <utils/host.h> +#include <utils/packet.h> /** * Callback called for any received UDP encapsulated ESP packet. diff --git a/src/libcharon/network/sender.h b/src/libcharon/network/sender.h index c4f18d73b..9b5c325cc 100644 --- a/src/libcharon/network/sender.h +++ b/src/libcharon/network/sender.h @@ -26,7 +26,7 @@ typedef struct sender_t sender_t; #include <library.h> -#include <network/packet.h> +#include <utils/packet.h> /** * Callback job responsible for sending IKE packets over the socket. diff --git a/src/libcharon/network/socket.h b/src/libcharon/network/socket.h index 4a4ef52e6..b8850c6ed 100644 --- a/src/libcharon/network/socket.h +++ b/src/libcharon/network/socket.h @@ -27,7 +27,7 @@ typedef struct socket_t socket_t; #include <library.h> -#include <network/packet.h> +#include <utils/packet.h> #include <utils/enumerator.h> #include <plugins/plugin.h> diff --git a/src/libcharon/sa/ike_sa.h b/src/libcharon/sa/ike_sa.h index e52355962..de9e0ede4 100644 --- a/src/libcharon/sa/ike_sa.h +++ b/src/libcharon/sa/ike_sa.h @@ -43,6 +43,7 @@ typedef struct ike_sa_t ike_sa_t; #include <config/peer_cfg.h> #include <config/ike_cfg.h> #include <credentials/auth_cfg.h> +#include <utils/packet.h> /** * Timeout in seconds after that a half open IKE_SA gets deleted. diff --git a/src/libcharon/sa/ikev2/tasks/ike_mobike.h b/src/libcharon/sa/ikev2/tasks/ike_mobike.h index a7e3fe7e3..3b447af51 100644 --- a/src/libcharon/sa/ikev2/tasks/ike_mobike.h +++ b/src/libcharon/sa/ikev2/tasks/ike_mobike.h @@ -26,7 +26,7 @@ typedef struct ike_mobike_t ike_mobike_t; #include <library.h> #include <sa/ike_sa.h> #include <sa/task.h> -#include <network/packet.h> +#include <utils/packet.h> /** * Task of type ike_mobike, detects and handles MOBIKE extension. diff --git a/src/libstrongswan/Android.mk b/src/libstrongswan/Android.mk index 8cba58816..b6abf156f 100644 --- a/src/libstrongswan/Android.mk +++ b/src/libstrongswan/Android.mk @@ -24,7 +24,7 @@ pen/pen.c plugins/plugin_loader.c plugins/plugin_feature.c processing/jobs/job.c processing/jobs/callback_job.c processing/processor.c processing/scheduler.c \ selectors/traffic_selector.c threading/thread.c threading/thread_value.c \ threading/mutex.c threading/semaphore.c threading/rwlock.c threading/spinlock.c \ -utils.c utils/host.c utils/identification.c utils/lexparser.c \ +utils.c utils/host.c utils/packet.c utils/identification.c utils/lexparser.c \ utils/linked_list.c utils/hashtable.c utils/enumerator.c utils/optionsfrom.c \ utils/capabilities.c utils/backtrace.c diff --git a/src/libstrongswan/Makefile.am b/src/libstrongswan/Makefile.am index dc849d6f2..b21f86f1e 100644 --- a/src/libstrongswan/Makefile.am +++ b/src/libstrongswan/Makefile.am @@ -22,7 +22,7 @@ pen/pen.c plugins/plugin_loader.c plugins/plugin_feature.c processing/jobs/job.c processing/jobs/callback_job.c processing/processor.c processing/scheduler.c \ selectors/traffic_selector.c threading/thread.c threading/thread_value.c \ threading/mutex.c threading/semaphore.c threading/rwlock.c threading/spinlock.c \ -utils.c utils/host.c utils/identification.c utils/lexparser.c \ +utils.c utils/host.c utils/packet.c utils/identification.c utils/lexparser.c \ utils/linked_list.c utils/hashtable.c utils/enumerator.c utils/optionsfrom.c \ utils/capabilities.c utils/backtrace.c @@ -57,8 +57,9 @@ processing/jobs/callback_job.h processing/processor.h processing/scheduler.h \ selectors/traffic_selector.h threading/thread.h threading/thread_value.h \ threading/mutex.h threading/condvar.h threading/spinlock.h threading/semaphore.h \ threading/rwlock.h threading/lock_profiler.h utils.h utils/host.h \ -utils/identification.h utils/lexparser.h utils/linked_list.h utils/hashtable.h \ -utils/enumerator.h utils/optionsfrom.h utils/capabilities.h utils/backtrace.h +utils/packet.h utils/identification.h utils/lexparser.h utils/linked_list.h \ +utils/hashtable.h utils/enumerator.h utils/optionsfrom.h utils/capabilities.h \ +utils/backtrace.h endif library.lo : $(top_builddir)/config.status diff --git a/src/libcharon/network/packet.c b/src/libstrongswan/utils/packet.c index c817e00fb..b5716fc4b 100644 --- a/src/libcharon/network/packet.c +++ b/src/libstrongswan/utils/packet.c @@ -110,15 +110,16 @@ METHOD(packet_t, clone_, packet_t*, packet_t *other; other = packet_create(); - if (this->destination != NULL) + if (this->destination) { - other->set_destination(other, this->destination->clone(this->destination)); + other->set_destination(other, + this->destination->clone(this->destination)); } - if (this->source != NULL) + if (this->source) { other->set_source(other, this->source->clone(this->source)); } - if (this->data.ptr != NULL) + if (this->data.ptr) { other->set_data(other, chunk_clone(this->adjusted_data)); } @@ -128,7 +129,7 @@ METHOD(packet_t, clone_, packet_t*, /* * Documented in header */ -packet_t *packet_create(void) +packet_t *packet_create() { private_packet_t *this; diff --git a/src/libcharon/network/packet.h b/src/libstrongswan/utils/packet.h index c53364104..9106bbef5 100644 --- a/src/libcharon/network/packet.h +++ b/src/libstrongswan/utils/packet.h @@ -17,7 +17,7 @@ /** * @defgroup packet packet - * @{ @ingroup network + * @{ @ingroup utils */ #ifndef PACKET_H_ @@ -29,97 +29,83 @@ typedef struct packet_t packet_t; #include <utils/host.h> /** - * Abstraction of an UDP-Packet, contains data, sender and receiver. + * Abstraction of an IP/UDP-Packet, contains data, sender and receiver. */ struct packet_t { /** * Set the source address. * - * Set host_t is now owned by packet_t, it will destroy - * it if necessary. - * - * @param source address to set as source + * @param source address to set as source (gets owned) */ - void (*set_source) (packet_t *packet, host_t *source); + void (*set_source)(packet_t *packet, host_t *source); /** * Set the destination address. * - * Set host_t is now owned by packet_t, it will destroy - * it if necessary. - * - * @param source address to set as destination + * @param source address to set as destination (gets owned) */ - void (*set_destination) (packet_t *packet, host_t *destination); + void (*set_destination)(packet_t *packet, host_t *destination); /** * Get the source address. * - * Set host_t is still owned by packet_t, clone it - * if needed. - * - * @return source address + * @return source address (internal data) */ - host_t *(*get_source) (packet_t *packet); + host_t *(*get_source)(packet_t *packet); /** * Get the destination address. * - * Set host_t is still owned by packet_t, clone it - * if needed. - * - * @return destination address + * @return destination address (internal data) */ - host_t *(*get_destination) (packet_t *packet); + host_t *(*get_destination)(packet_t *packet); /** * Get the data from the packet. * - * The data pointed by the chunk is still owned - * by the packet. Clone it if needed. - * - * @return chunk containing the data + * @return chunk containing the data (internal data) */ - chunk_t (*get_data) (packet_t *packet); + chunk_t (*get_data)(packet_t *packet); /** * Set the data in the packet. * - * Supplied chunk data is now owned by the - * packet. It will free it. - * - * @param data chunk with data to set + * @param data chunk with data to set (gets owned) */ - void (*set_data) (packet_t *packet, chunk_t data); + void (*set_data)(packet_t *packet, chunk_t data); /** * Increase the offset where the actual packet data starts. * + * The total offset applies to future calls of get_data() and clone(). + * * @note The offset is reset to 0 when set_data() is called. * * @param bytes the number of additional bytes to skip */ - void (*skip_bytes) (packet_t *packet, size_t bytes); + void (*skip_bytes)(packet_t *packet, size_t bytes); /** * Clones a packet_t object. * + * @note Data is cloned without skipped bytes. + * * @param clone clone of the packet */ - packet_t* (*clone) (packet_t *packet); + packet_t* (*clone)(packet_t *packet); /** * Destroy the packet, freeing contained data. */ - void (*destroy) (packet_t *packet); + void (*destroy)(packet_t *packet); }; /** - * create an empty packet + * Create an empty packet * * @return packet_t object */ -packet_t *packet_create(void); +packet_t *packet_create(); #endif /** PACKET_H_ @}*/ |