90#include "contiki-lib.h"
91#include "contiki-net.h"
113 struct pt pt, psockpt;
116 const uint8_t *sendptr;
125 struct psock_buf buf;
127 unsigned int bufsize;
132void psock_init(
struct psock *
psock, uint8_t *buffer,
unsigned int buffersize);
150#define PSOCK_INIT(psock, buffer, buffersize) \
151 psock_init(psock, buffer, buffersize)
164#define PSOCK_BEGIN(psock) PT_BEGIN(&((psock)->pt))
184#define PSOCK_SEND(psock, data, datalen) \
185 PT_WAIT_THREAD(&((psock)->pt), psock_send(psock, data, datalen))
197#define PSOCK_SEND_STR(psock, str) \
198 PT_WAIT_THREAD(&((psock)->pt), psock_send(psock, (uint8_t *)str, strlen(str)))
201 unsigned short (*f)(
void *),
void *arg));
225#define PSOCK_GENERATOR_SEND(psock, generator, arg) \
226 PT_WAIT_THREAD(&((psock)->pt), \
227 psock_generator_send(psock, generator, arg))
241#define PSOCK_CLOSE(psock) uip_close()
256#define PSOCK_READBUF(psock) \
257 PT_WAIT_THREAD(&((psock)->pt), psock_readbuf_len(psock, 1))
273#define PSOCK_READBUF_LEN(psock, len) \
274 PT_WAIT_THREAD(&((psock)->pt), psock_readbuf_len(psock, len))
291#define PSOCK_READTO(psock, c) \
292 PT_WAIT_THREAD(&((psock)->pt), psock_readto(psock, c))
304#define PSOCK_DATALEN(psock) psock_datalen(psock)
320#define PSOCK_EXIT(psock) PT_EXIT(&((psock)->pt))
331#define PSOCK_CLOSE_EXIT(psock) \
333 PSOCK_CLOSE(psock); \
348#define PSOCK_END(psock) PT_END(&((psock)->pt))
350char psock_newdata(
struct psock *s);
362#define PSOCK_NEWDATA(psock) psock_newdata(psock)
395#define PSOCK_WAIT_UNTIL(psock, condition) \
396 PT_WAIT_UNTIL(&((psock)->pt), (condition));
398#define PSOCK_WAIT_THREAD(psock, condition) \
399 PT_WAIT_THREAD(&((psock)->pt), (condition))
#define PT_THREAD(name_args)
Declaration of a protothread.
The representation of a protosocket.