Changeset 7fc092a in mainline for uspace/lib/net/include/tl_skel.h


Ignore:
Timestamp:
2011-01-27T22:09:29Z (13 years ago)
Author:
Jan Vesely <jano.vesely@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
db7ed07
Parents:
9ee87f6 (diff), 6265a2b (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Changes from development branch

File:
1 moved

Legend:

Unmodified
Added
Removed
  • uspace/lib/net/include/tl_skel.h

    r9ee87f6 r7fc092a  
    3131 */
    3232
    33 #ifndef LIBNET_TL_LOCAL_H_
    34 #define LIBNET_TL_LOCAL_H_
     33#ifndef LIBNET_TL_SKEL_H_
     34#define LIBNET_TL_SKEL_H_
    3535
     36/** @file
     37 * Transport layer module skeleton.
     38 * The skeleton has to be part of each transport layer module.
     39 */
     40
     41#include <async.h>
     42#include <fibril_synch.h>
    3643#include <ipc/ipc.h>
    37 #include <async.h>
     44#include <ipc/services.h>
    3845
    39 /** Starts the TL module.
     46#include <adt/measured_strings.h>
     47#include <net/device.h>
     48#include <net/packet.h>
     49
     50/** Module initialization.
    4051 *
    41  * Initializes the client connection serving function, initializes the module,
    42  * registers the module service and starts the async manager, processing IPC
    43  * messages in an infinite loop.
     52 * This has to be implemented in user code.
    4453 *
    45  * @param[in] client_connection The client connection processing function. The
    46  *                      module skeleton propagates its own one.
    47  * @return              EOK on successful module termination.
    48  * @return              Other error codes as defined for the module initialize
    49  *                      function.
    50  * @return              Other error codes as defined for the REGISTER_ME() macro
    51  *                      function.
     54 * @param[in] net_phone Networking module phone.
     55 *
     56 * @return EOK on success.
     57 * @return Other error codes as defined for each specific module
     58 *         initialize function.
     59 *
    5260 */
    53 extern int tl_module_message_standalone(ipc_callid_t, ipc_call_t *,
     61extern int tl_initialize(int net_phone);
     62
     63/** Per-connection module initialization.
     64 *
     65 * This has to be implemented in user code.
     66 *
     67 */
     68extern void tl_connection(void);
     69
     70/** Process the transport layer module message.
     71 *
     72 * This has to be implemented in user code.
     73 *
     74 * @param[in]  callid Message identifier.
     75 * @param[in]  call   Message parameters.
     76 * @param[out] answer Answer.
     77 * @param[out] count  Number of arguments of the answer.
     78 *
     79 * @return EOK on success.
     80 * @return Other error codes as defined for each specific module.
     81 *
     82 */
     83extern int tl_message(ipc_callid_t, ipc_call_t *,
    5484    ipc_call_t *, size_t *);
    5585
    56 /** Processes the TL module message.
    57  *
    58  * @param[in] callid    The message identifier.
    59  * @param[in] call      The message parameters.
    60  * @param[out] answer   The message answer parameters.
    61  * @param[out] answer_count The last parameter for the actual answer in the
    62  *                      answer parameter.
    63  * @return              EOK on success.
    64  * @return              Other error codes as defined for the module's message
    65  *                      standalone function.
    66  */
    67 extern int tl_module_start_standalone(async_client_conn_t);
     86extern int tl_module_start(int);
    6887
    6988#endif
Note: See TracChangeset for help on using the changeset viewer.