Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/net/generic/packet_client.c

    r514ee46 rb69ceea  
    2727 */
    2828
    29 /** @addtogroup packet
    30  *  @{
     29/** @addtogroup libnet
     30 * @{
    3131 */
    3232
    3333/** @file
    34  *  Packet client implementation.
     34 * Packet client implementation.
    3535 */
    3636
     
    3838#include <mem.h>
    3939#include <unistd.h>
    40 
    4140#include <sys/mman.h>
    4241
    4342#include <packet_client.h>
     43#include <packet_remote.h>
    4444
    4545#include <net/packet.h>
    4646#include <net/packet_header.h>
    4747
    48 int packet_copy_data(packet_t packet, const void * data, size_t length)
     48/** Copies the specified data to the beginning of the actual packet content.
     49 *
     50 * Pushes the content end if needed.
     51 *
     52 * @param[in] packet    The packet to be filled.
     53 * @param[in] data      The data to be copied.
     54 * @param[in] length    The length of the copied data.
     55 * @returns             EOK on success.
     56 * @returns             EINVAL if the packet is not valid.
     57 * @returns             ENOMEM if there is not enough memory left.
     58 */
     59int packet_copy_data(packet_t packet, const void *data, size_t length)
    4960{
    5061        if (!packet_is_valid(packet))
     
    6172}
    6273
     74/** Allocates the specified space right before the actual packet content and
     75 * returns its pointer.
     76 *
     77 * @param[in] packet    The packet to be used.
     78 * @param[in] length    The space length to be allocated at the beginning of the
     79 *                      packet content.
     80 * @returns             The pointer to the allocated memory.
     81 * @returns             NULL if there is not enough memory left.
     82 */
    6383void *packet_prefix(packet_t packet, size_t length)
    6484{
     
    7393}
    7494
     95/** Allocates the specified space right after the actual packet content and
     96 * returns its pointer.
     97 *
     98 * @param[in] packet    The packet to be used.
     99 * @param[in] length    The space length to be allocated at the end of the
     100 *                       packet content.
     101 * @returns             The pointer to the allocated memory.
     102 * @returns             NULL if there is not enough memory left.
     103 */
    75104void *packet_suffix(packet_t packet, size_t length)
    76105{
     
    84113}
    85114
     115/** Trims the actual packet content by the specified prefix and suffix lengths.
     116 *
     117 * @param[in] packet    The packet to be trimmed.
     118 * @param[in] prefix    The prefix length to be removed from the beginning of
     119 *                      the packet content.
     120 * @param[in] suffix    The suffix length to be removed from the end of the
     121 *                      packet content.
     122 * @returns             EOK on success.
     123 * @returns             EINVAL if the packet is not valid.
     124 * @returns             ENOMEM if there is not enough memory left.
     125 */
    86126int packet_trim(packet_t packet, size_t prefix, size_t suffix)
    87127{
     
    97137}
    98138
     139/** Returns the packet identifier.
     140 *
     141 * @param[in] packet    The packet.
     142 * @returns             The packet identifier.
     143 * @returns             Zero if the packet is not valid.
     144 */
    99145packet_id_t packet_get_id(const packet_t packet)
    100146{
     
    102148}
    103149
    104 int packet_get_addr(const packet_t packet, uint8_t ** src, uint8_t ** dest)
     150/** Returns the stored packet addresses and their length.
     151 *
     152 * @param[in] packet    The packet.
     153 * @param[out] src      The source address. May be NULL if not desired.
     154 * @param[out] dest     The destination address. May be NULL if not desired.
     155 * @returns             The stored addresses length.
     156 * @returns             Zero if the addresses are not present.
     157 * @returns             EINVAL if the packet is not valid.
     158 */
     159int packet_get_addr(const packet_t packet, uint8_t **src, uint8_t **dest)
    105160{
    106161        if (!packet_is_valid(packet))
     
    116171}
    117172
     173/** Returns the packet content length.
     174 *
     175 * @param[in] packet    The packet.
     176 * @returns             The packet content length in bytes.
     177 * @returns             Zero if the packet is not valid.
     178 */
    118179size_t packet_get_data_length(const packet_t packet)
    119180{
     
    124185}
    125186
     187/** Returns the pointer to the beginning of the packet content.
     188 *
     189 * @param[in] packet    The packet.
     190 * @returns             The pointer to the beginning of the packet content.
     191 * @returns             NULL if the packet is not valid.
     192 */
    126193void *packet_get_data(const packet_t packet)
    127194{
     
    132199}
    133200
     201/** Sets the packet addresses.
     202 *
     203 * @param[in] packet    The packet.
     204 * @param[in] src       The new source address. May be NULL.
     205 * @param[in] dest      The new destination address. May be NULL.
     206 * @param[in] addr_len  The addresses length.
     207 * @returns             EOK on success.
     208 * @returns             EINVAL if the packet is not valid.
     209 * @returns             ENOMEM if there is not enough memory left.
     210 */
    134211int
    135 packet_set_addr(packet_t packet, const uint8_t * src, const uint8_t * dest,
     212packet_set_addr(packet_t packet, const uint8_t *src, const uint8_t *dest,
    136213    size_t addr_len)
    137214{
     
    170247}
    171248
     249/** Returns the packet copy.
     250 *
     251 * Copies the addresses, data, order and metric values.
     252 * Does not copy the queue placement.
     253 *
     254 * @param[in] phone     The packet server module phone.
     255 * @param[in] packet    The original packet.
     256 * @returns             The packet copy.
     257 * @returns             NULL on error.
     258 */
    172259packet_t packet_get_copy(int phone, packet_t packet)
    173260{
Note: See TracChangeset for help on using the changeset viewer.