A brief file description. More...
#include "I_UDPNet.h"
Go to the source code of this file.
Data Structures | |
class | UDPPacketInternal |
Functions | |
TS_INLINE UDPPacket * | new_UDPPacket (struct sockaddr const *to, ink_hrtime when, char *buf, int len) |
Create a new packet to be sent over UDPConnection. | |
TS_INLINE UDPPacket * | new_UDPPacket (struct sockaddr const *to, ink_hrtime when, IOBufferBlock *buf, int len) |
Create a new packet to be sent over UDPConnection. | |
TS_INLINE UDPPacket * | new_UDPPacket (struct sockaddr const *to, ink_hrtime when, Ptr< IOBufferBlock > buf) |
TS_INLINE UDPPacket * | new_UDPPacket (ink_hrtime when, Ptr< IOBufferBlock > buf) |
TS_INLINE UDPPacket * | new_incoming_UDPPacket (struct sockaddr *from, char *buf, int len) |
Create a new packet to be delivered to application. | |
TS_INLINE UDPPacket * | new_UDPPacket () |
Create a new packet to be sent over UDPConnection. | |
Variables | |
inkcoreapi ClassAllocator < UDPPacketInternal > | udpPacketAllocator |
A brief file description.
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Definition in file P_UDPPacket.h.
TS_INLINE UDPPacket* new_incoming_UDPPacket | ( | struct sockaddr * | from, | |
char * | buf, | |||
int | len | |||
) |
Create a new packet to be delivered to application.
Internal function only
Definition at line 231 of file P_UDPPacket.h.
References IOBufferBlock::alloc(), UDPPacket::append_block(), ats_ip_copy(), UDPPacketInternal::delivery_time, IOBufferBlock::end(), IOBufferBlock::fill(), UDPPacket::from, UDPPacketInternal::in_heap, UDPPacketInternal::in_the_priority_queue, iobuffer_size_to_index(), memcpy, new_IOBufferBlock, and udpPacketAllocator.
Referenced by UDPNetProcessorInternal::udp_read_from_net().
TS_INLINE UDPPacket* new_UDPPacket | ( | ) |
Create a new packet to be sent over UDPConnection.
Packet has no destination or data.
Definition at line 250 of file P_UDPPacket.h.
References udpPacketAllocator.
TS_INLINE UDPPacket* new_UDPPacket | ( | struct sockaddr const * | to, | |
ink_hrtime | when = 0 , |
|||
IOBufferBlock * | block = NULL , |
|||
int | len = 0 | |||
) |
Create a new packet to be sent over UDPConnection.
This clones and makes a reference to an existing IOBufferBlock chain.
to | address of where to send packet | |
when | ink_hrtime relative to ink_get_hrtime_internal() | |
block | if !NULL, then the IOBufferBlock chain of data to use for packet | |
len | # of bytes to reference from block |
Definition at line 191 of file P_UDPPacket.h.
References UDPPacket::append_block(), ats_ip_copy(), IOBufferBlock::clone(), UDPPacketInternal::delivery_time, UDPPacketInternal::in_heap, UDPPacketInternal::in_the_priority_queue, IOBufferBlock::next, UDPPacket::to, and udpPacketAllocator.
TS_INLINE UDPPacket* new_UDPPacket | ( | ink_hrtime | when, | |
Ptr< IOBufferBlock > | buf | |||
) |
Definition at line 225 of file P_UDPPacket.h.
References new_UDPPacket().
TS_INLINE UDPPacket* new_UDPPacket | ( | struct sockaddr const * | to, | |
ink_hrtime | when, | |||
Ptr< IOBufferBlock > | buf | |||
) |
Definition at line 211 of file P_UDPPacket.h.
References ats_ip_copy(), UDPPacketInternal::chain, UDPPacketInternal::delivery_time, UDPPacketInternal::in_heap, UDPPacketInternal::in_the_priority_queue, UDPPacket::to, and udpPacketAllocator.
TS_INLINE UDPPacket* new_UDPPacket | ( | struct sockaddr const * | to, | |
ink_hrtime | when = 0 , |
|||
char * | buf = NULL , |
|||
int | len = 0 | |||
) |
Create a new packet to be sent over UDPConnection.
This actually copies data from a buffer.
to | address of where to send packet | |
when | ink_hrtime relative to ink_get_hrtime_internal() | |
buf | if !NULL, then len bytes copied from buf and made into packet. | |
len | # of bytes to copy from buf |
Definition at line 170 of file P_UDPPacket.h.
References IOBufferBlock::alloc(), UDPPacket::append_block(), ats_ip_copy(), UDPPacketInternal::delivery_time, IOBufferBlock::end(), IOBufferBlock::fill(), UDPPacketInternal::in_heap, UDPPacketInternal::in_the_priority_queue, iobuffer_size_to_index(), memcpy, new_IOBufferBlock, UDPPacket::to, and udpPacketAllocator.
Referenced by INKUDPPacketCreate(), INKUDPSendTo(), and new_UDPPacket().
inkcoreapi ClassAllocator<UDPPacketInternal> udpPacketAllocator |
Referenced by UDPPacketInternal::free(), new_incoming_UDPPacket(), and new_UDPPacket().