• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * coap_session_internal.h -- Structures, Enums & Functions that are not
3  * exposed to application programming
4  *
5  * Copyright (C) 2010-2019 Olaf Bergmann <bergmann@tzi.org>
6  *
7  * This file is part of the CoAP library libcoap. Please see README for terms
8  * of use.
9  */
10 
11 /**
12  * @file coap_session_internal.h
13  * @brief COAP session internal information
14  */
15 
16 #ifndef COAP_SESSION_INTERNAL_H_
17 #define COAP_SESSION_INTERNAL_H_
18 
19 /**
20  * @defgroup session_internal Sessions (Internal)
21  * Structures, Enums and Functions that are not exposed to applications
22  * @{
23  */
24 
25 /**
26 * Abstraction of virtual endpoint that can be attached to coap_context_t. The
27 * tuple (handle, addr) must uniquely identify this endpoint.
28 */
29 struct coap_endpoint_t {
30   struct coap_endpoint_t *next;
31   struct coap_context_t *context; /**< endpoint's context */
32   coap_proto_t proto;             /**< protocol used on this interface */
33   uint16_t default_mtu;           /**< default mtu for this interface */
34   coap_socket_t sock;             /**< socket object for the interface, if any */
35   coap_address_t bind_addr;       /**< local interface address */
36   struct coap_session_t *sessions; /**< hash table or list of active sessions */
37 };
38 
39 /** @} */
40 
41 #endif /* COAP_SESSION_INTERNAL_H_ */
42