mirror of
https://github.com/lwip-tcpip/lwip.git
synced 2024-12-25 09:16:20 +00:00
added LWIP_TIMERS_CUSTOM to override the default implementation of timeouts
This commit is contained in:
parent
a326b057b3
commit
53dc94d570
@ -6,10 +6,14 @@ HISTORY
|
|||||||
|
|
||||||
++ New features:
|
++ New features:
|
||||||
|
|
||||||
2016-07-xx: Dirk Ziegelmeier:
|
2016-07-27: Simon Goldschmidt
|
||||||
|
* opt.h, timeouts.h/.c: added LWIP_TIMERS_CUSTOM to override the default
|
||||||
|
implementation of timeouts
|
||||||
|
|
||||||
|
2016-07-xx: Dirk Ziegelmeier
|
||||||
* Large overhaul of doxygen documentation
|
* Large overhaul of doxygen documentation
|
||||||
|
|
||||||
2016-04-05: Simon Goldschmidt:
|
2016-04-05: Simon Goldschmidt
|
||||||
* timers.h/.c: prepare for overriding current timeout implementation: all
|
* timers.h/.c: prepare for overriding current timeout implementation: all
|
||||||
stack-internal caclic timers are avaliable in the lwip_cyclic_timers array
|
stack-internal caclic timers are avaliable in the lwip_cyclic_timers array
|
||||||
|
|
||||||
|
@ -106,7 +106,7 @@ const struct lwip_cyclic_timer lwip_cyclic_timers[] = {
|
|||||||
#endif /* LWIP_IPV6 */
|
#endif /* LWIP_IPV6 */
|
||||||
};
|
};
|
||||||
|
|
||||||
#if LWIP_TIMERS
|
#if LWIP_TIMERS && LWIP_TIMERS_CUSTOM
|
||||||
|
|
||||||
/** The one and only timeout list */
|
/** The one and only timeout list */
|
||||||
static struct sys_timeo *next_timeout;
|
static struct sys_timeo *next_timeout;
|
||||||
@ -426,10 +426,10 @@ again:
|
|||||||
|
|
||||||
#endif /* NO_SYS */
|
#endif /* NO_SYS */
|
||||||
|
|
||||||
#else /* LWIP_TIMERS */
|
#else /* LWIP_TIMERS && LWIP_TIMERS_CUSTOM */
|
||||||
/* Satisfy the TCP code which calls this function */
|
/* Satisfy the TCP code which calls this function */
|
||||||
void
|
void
|
||||||
tcp_timer_needed(void)
|
tcp_timer_needed(void)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
#endif /* LWIP_TIMERS */
|
#endif /* LWIP_TIMERS && LWIP_TIMERS_CUSTOM */
|
||||||
|
@ -73,11 +73,28 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* NO_SYS_NO_TIMERS==1: Drop support for sys_timeout when NO_SYS==1
|
* LWIP_TIMERS==0: Drop support for sys_timeout and lwip-internal cyclic timers.
|
||||||
* Mainly for compatibility to old versions.
|
* (the array of lwip-internal cyclic timers is still provided)
|
||||||
*/
|
*/
|
||||||
#if !defined NO_SYS_NO_TIMERS || defined __DOXYGEN__
|
#ifndef LWIP_TIMERS
|
||||||
#define NO_SYS_NO_TIMERS 0
|
#define LWIP_TIMERS 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* LWIP_TIMERS_CUSTOM==1: Provide your own timer implementation.
|
||||||
|
* Function prototypes in timeouts.h and the array of lwip-internal cyclic timers
|
||||||
|
* are still included, but the implementation is not. The following functions
|
||||||
|
* will be required: sys_timeouts_init(), sys_timeout(), sys_untimeout(),
|
||||||
|
* sys_timeouts_mbox_fetch()
|
||||||
|
* (check NO_SYS_NO_TIMERS for compatibility to old versions)
|
||||||
|
*/
|
||||||
|
#if !defined LWIP_TIMERS_CUSTOM || defined __DOXYGEN__
|
||||||
|
#ifdef NO_SYS_NO_TIMERS
|
||||||
|
#define LWIP_TIMERS (!NO_SYS || (NO_SYS && !NO_SYS_NO_TIMERS))
|
||||||
|
#else
|
||||||
|
#define LWIP_TIMERS 1
|
||||||
|
#endif
|
||||||
|
#define LWIP_TIMERS_CUSTOM 0
|
||||||
#endif
|
#endif
|
||||||
/**
|
/**
|
||||||
* @}
|
* @}
|
||||||
|
@ -91,9 +91,9 @@ LWIP_MEMPOOL(ARP_QUEUE, MEMP_NUM_ARP_QUEUE, sizeof(struct etharp_q_en
|
|||||||
LWIP_MEMPOOL(IGMP_GROUP, MEMP_NUM_IGMP_GROUP, sizeof(struct igmp_group), "IGMP_GROUP")
|
LWIP_MEMPOOL(IGMP_GROUP, MEMP_NUM_IGMP_GROUP, sizeof(struct igmp_group), "IGMP_GROUP")
|
||||||
#endif /* LWIP_IGMP */
|
#endif /* LWIP_IGMP */
|
||||||
|
|
||||||
#if (!NO_SYS || (NO_SYS && !NO_SYS_NO_TIMERS)) /* LWIP_TIMERS */
|
#if LWIP_TIMERS && !LWIP_TIMERS_CUSTOM
|
||||||
LWIP_MEMPOOL(SYS_TIMEOUT, MEMP_NUM_SYS_TIMEOUT, sizeof(struct sys_timeo), "SYS_TIMEOUT")
|
LWIP_MEMPOOL(SYS_TIMEOUT, MEMP_NUM_SYS_TIMEOUT, sizeof(struct sys_timeo), "SYS_TIMEOUT")
|
||||||
#endif /* LWIP_TIMERS */
|
#endif /* LWIP_TIMERS && !LWIP_TIMERS_CUSTOM */
|
||||||
|
|
||||||
#if LWIP_DNS && LWIP_SOCKET
|
#if LWIP_DNS && LWIP_SOCKET
|
||||||
LWIP_MEMPOOL(NETDB, MEMP_NUM_NETDB, NETDB_ELEM_SIZE, "NETDB")
|
LWIP_MEMPOOL(NETDB, MEMP_NUM_NETDB, NETDB_ELEM_SIZE, "NETDB")
|
||||||
|
@ -39,15 +39,6 @@
|
|||||||
#define LWIP_HDR_TIMEOUTS_H
|
#define LWIP_HDR_TIMEOUTS_H
|
||||||
|
|
||||||
#include "lwip/opt.h"
|
#include "lwip/opt.h"
|
||||||
|
|
||||||
/** Timers are not supported when NO_SYS==1 and NO_SYS_NO_TIMERS==1.
|
|
||||||
* Timer support can be disabled when cyclic timers are implemented
|
|
||||||
* differently (use lwip_cyclic_timers array)
|
|
||||||
*/
|
|
||||||
#ifndef LWIP_TIMERS
|
|
||||||
#define LWIP_TIMERS (!NO_SYS || (NO_SYS && !NO_SYS_NO_TIMERS))
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include "lwip/err.h"
|
#include "lwip/err.h"
|
||||||
#if !NO_SYS
|
#if !NO_SYS
|
||||||
#include "lwip/sys.h"
|
#include "lwip/sys.h"
|
||||||
|
Loading…
Reference in New Issue
Block a user