diff options
Diffstat (limited to 'src/udp.c')
-rw-r--r-- | src/udp.c | 12 |
1 files changed, 6 insertions, 6 deletions
@@ -45,7 +45,7 @@ void udp_open(lua_State *L) | |||
45 | udp_inherit(L, UDP_CLASS); | 45 | udp_inherit(L, UDP_CLASS); |
46 | /* declare global functions */ | 46 | /* declare global functions */ |
47 | lua_pushcfunction(L, udp_global_udpsocket); | 47 | lua_pushcfunction(L, udp_global_udpsocket); |
48 | lua_setglobal(L, "udpsocket"); | 48 | priv_newglobal(L, "udp"); |
49 | for (i = 0; i < sizeof(funcs)/sizeof(funcs[0]); i++) | 49 | for (i = 0; i < sizeof(funcs)/sizeof(funcs[0]); i++) |
50 | priv_newglobalmethod(L, funcs[i].name); | 50 | priv_newglobalmethod(L, funcs[i].name); |
51 | /* make class selectable */ | 51 | /* make class selectable */ |
@@ -162,12 +162,12 @@ static int udp_lua_receivefrom(lua_State *L) | |||
162 | p_udp udp = (p_udp) lua_touserdata(L, 1); | 162 | p_udp udp = (p_udp) lua_touserdata(L, 1); |
163 | p_tm tm = &udp->base_tm; | 163 | p_tm tm = &udp->base_tm; |
164 | struct sockaddr_in peer; | 164 | struct sockaddr_in peer; |
165 | size_t peer_len = sizeof(peer); | 165 | int peer_len = sizeof(peer); |
166 | unsigned char buffer[UDP_DATAGRAMSIZE]; | 166 | unsigned char buffer[UDP_DATAGRAMSIZE]; |
167 | size_t wanted = (size_t) luaL_opt_number(L, 2, sizeof(buffer)); | 167 | size_t wanted = (size_t) luaL_opt_number(L, 2, sizeof(buffer)); |
168 | size_t got; | 168 | size_t got; |
169 | int err; | 169 | int err; |
170 | if (udp->udp_connected) lua_error(L, "receivefrom on connected socket"); | 170 | if (udp->udp_connected) luaL_error(L, "receivefrom on connected socket"); |
171 | tm_markstart(tm); | 171 | tm_markstart(tm); |
172 | wanted = MIN(wanted, sizeof(buffer)); | 172 | wanted = MIN(wanted, sizeof(buffer)); |
173 | err = compat_recvfrom(udp->fd, buffer, wanted, &got, tm_getremaining(tm), | 173 | err = compat_recvfrom(udp->fd, buffer, wanted, &got, tm_getremaining(tm), |
@@ -201,7 +201,7 @@ static int udp_lua_send(lua_State *L) | |||
201 | size_t wanted, sent = 0; | 201 | size_t wanted, sent = 0; |
202 | int err; | 202 | int err; |
203 | cchar *data = luaL_check_lstr(L, 2, &wanted); | 203 | cchar *data = luaL_check_lstr(L, 2, &wanted); |
204 | if (!udp->udp_connected) lua_error(L, "send on unconnected socket"); | 204 | if (!udp->udp_connected) luaL_error(L, "send on unconnected socket"); |
205 | tm_markstart(tm); | 205 | tm_markstart(tm); |
206 | err = compat_send(udp->fd, data, wanted, &sent, tm_getremaining(tm)); | 206 | err = compat_send(udp->fd, data, wanted, &sent, tm_getremaining(tm)); |
207 | priv_pusherror(L, err == PRIV_CLOSED ? PRIV_REFUSED : err); | 207 | priv_pusherror(L, err == PRIV_CLOSED ? PRIV_REFUSED : err); |
@@ -230,9 +230,9 @@ static int udp_lua_sendto(lua_State *L) | |||
230 | p_tm tm = &udp->base_tm; | 230 | p_tm tm = &udp->base_tm; |
231 | struct sockaddr_in peer; | 231 | struct sockaddr_in peer; |
232 | int err; | 232 | int err; |
233 | if (udp->udp_connected) lua_error(L, "sendto on connected socket"); | 233 | if (udp->udp_connected) luaL_error(L, "sendto on connected socket"); |
234 | memset(&peer, 0, sizeof(peer)); | 234 | memset(&peer, 0, sizeof(peer)); |
235 | if (!inet_aton(ip, &peer.sin_addr)) lua_error(L, "invalid ip address"); | 235 | if (!inet_aton(ip, &peer.sin_addr)) luaL_error(L, "invalid ip address"); |
236 | peer.sin_family = AF_INET; | 236 | peer.sin_family = AF_INET; |
237 | peer.sin_port = htons(port); | 237 | peer.sin_port = htons(port); |
238 | tm_markstart(tm); | 238 | tm_markstart(tm); |