X-Git-Url: http://www.average.org/gitweb/?p=psmb.git;a=blobdiff_plain;f=src%2Fpsmb_priv.h;h=b2717f9281f931dc1ceabe65b716fc766ef21cf2;hp=9b57d390861a5f414e479e28e7b8e67b3740f746;hb=20b696a4f530bab420be36972f6a19d36b0f7080;hpb=8309c3b0f167256776fb0cb96fc2c8becd4ed144 diff --git a/src/psmb_priv.h b/src/psmb_priv.h index 9b57d39..b2717f9 100644 --- a/src/psmb_priv.h +++ b/src/psmb_priv.h @@ -1,14 +1,40 @@ #ifndef _PSMB_PRIV_H #include +#include -struct _psmb_ctx psmb_ctx_t { +#define PSMB_OK 0 +#define PSMB_ERROR 1 +#define PSMB_NEED_WRITE 2 + +#define PSMB_DEFAULT_PORT 5313 +#define PSMB_DEFAULT_PMTU 1452 + +struct _ucaddr { + struct sockaddr_in6 addr; +}; + +struct _msg { + struct _ucaddr peeraddr; + char *channel; + size_t chan_size; + void *data; + size_t data_size; +}; + +struct _psmb_ctx { int fd; void *(*malloc)(size_t size); void (*free)(void *ptr); void *(*realloc)(void *ptr, size_t size); + void (*logf)(void *log_priv, int priority, const char *format, ...); + void *log_priv; + unsigned short port; int pmtu; - /* data here */ + struct in6_addr prefix; + unsigned char prefixlen; + /* subscription set here */ + struct _msg incoming; }; struct _psmb_result {