Skip to content

Commit 263b211

Browse files
authored
Add C declarations needed for zmq http server (#1595)
Required by [koreader to create a zmq http server](koreader/koreader#10223)
1 parent 357b4bf commit 263b211

File tree

2 files changed

+22
-6
lines changed

2 files changed

+22
-6
lines changed

ffi-cdecl/zeromq_cdecl.c

+13-3
Original file line numberDiff line numberDiff line change
@@ -84,35 +84,45 @@ cdecl_const(ZMQ_GSSAPI_SERVICE_PRINCIPAL)
8484
cdecl_const(ZMQ_GSSAPI_PLAINTEXT)
8585
cdecl_const(ZMQ_HANDSHAKE_IVL)
8686
cdecl_const(ZMQ_IDENTITY_FD)
87+
cdecl_const(ZFRAME_MORE)
88+
cdecl_const(ZFRAME_REUSE)
8789

8890
cdecl_func(zmq_getsockopt)
91+
cdecl_func(zmq_send)
8992

9093
cdecl_func(zctx_new)
9194
cdecl_func(zctx_destroy)
95+
9296
cdecl_func(zsocket_new)
9397
cdecl_func(zsocket_connect)
98+
cdecl_func(zsocket_bind)
9499
cdecl_func(zsocket_set_identity)
95100
cdecl_func(zsocket_identity)
96101
cdecl_func(zsocket_destroy)
102+
97103
cdecl_func(zframe_recv)
98104
cdecl_func(zframe_size)
99105
cdecl_func(zframe_data)
106+
cdecl_func(zframe_send)
107+
cdecl_func(zframe_destroy)
100108

101109
cdecl_func(zmsg_new)
102110
cdecl_func(zmsg_size)
103111
cdecl_func(zmsg_addmem)
104112
cdecl_func(zmsg_send)
105113
cdecl_func(zmsg_popstr)
106-
cdecl_func(zstr_free)
107114
cdecl_func(zmsg_pop)
115+
cdecl_func(zmsg_destroy)
116+
117+
cdecl_func(zstr_free)
118+
cdecl_func(zstr_send)
119+
108120
cdecl_func(zhash_unpack)
109121
cdecl_func(zhash_first)
110122
cdecl_func(zhash_next)
111123
cdecl_func(zhash_cursor)
112124
cdecl_func(zhash_lookup)
113-
cdecl_func(zmsg_destroy)
114125
cdecl_func(zhash_destroy)
115-
cdecl_func(zframe_destroy)
116126

117127
cdecl_func(zpoller_new)
118128
cdecl_func(zpoller_destroy)

ffi/zeromq_h.lua

+9-3
Original file line numberDiff line numberDiff line change
@@ -77,32 +77,38 @@ static const int ZMQ_GSSAPI_SERVICE_PRINCIPAL = 64;
7777
static const int ZMQ_GSSAPI_PLAINTEXT = 65;
7878
static const int ZMQ_HANDSHAKE_IVL = 66;
7979
static const int ZMQ_IDENTITY_FD = 67;
80+
static const int ZFRAME_MORE = 1;
81+
static const int ZFRAME_REUSE = 2;
8082
int zmq_getsockopt(void *, int, void *, size_t *) __attribute__((visibility("default")));
83+
int zmq_send(void *, void *, size_t, int);
8184
zctx_t *zctx_new(void);
8285
void zctx_destroy(zctx_t **);
8386
void *zsocket_new(zctx_t *, int);
8487
int zsocket_connect(void *, const char *, ...);
88+
int zsocket_bind(void *, const char *, ...);
8589
void zsocket_set_identity(void *, const char *);
8690
char *zsocket_identity(void *);
8791
void zsocket_destroy(zctx_t *, void *);
8892
zframe_t *zframe_recv(void *);
8993
size_t zframe_size(zframe_t *);
9094
unsigned char *zframe_data(zframe_t *);
95+
int zframe_send(zframe_t **, void *, int);
96+
void zframe_destroy(zframe_t **);
9197
zmsg_t *zmsg_new(void);
9298
size_t zmsg_size(zmsg_t *);
9399
int zmsg_addmem(zmsg_t *, const void *, size_t);
94100
int zmsg_send(zmsg_t **, void *);
95101
char *zmsg_popstr(zmsg_t *);
96-
void zstr_free(char **);
97102
zframe_t *zmsg_pop(zmsg_t *);
103+
void zmsg_destroy(zmsg_t **);
104+
void zstr_free(char **);
105+
int zstr_send (void *, const char *);
98106
zhash_t *zhash_unpack(zframe_t *);
99107
void *zhash_first(zhash_t *);
100108
void *zhash_next(zhash_t *);
101109
char *zhash_cursor(zhash_t *);
102110
void *zhash_lookup(zhash_t *, const char *);
103-
void zmsg_destroy(zmsg_t **);
104111
void zhash_destroy(zhash_t **);
105-
void zframe_destroy(zframe_t **);
106112
zpoller_t *zpoller_new(void *, ...);
107113
void zpoller_destroy(zpoller_t **);
108114
int zpoller_add(zpoller_t *, void *);

0 commit comments

Comments
 (0)