#endif
#include <sys/stat.h>
+#include<errno.h>
#include "../vlc.h"
#include "../libs.h"
/*****************************************************************************
*
*****************************************************************************/
+static int vlclua_net_connect_tcp( lua_State *L )
+{
+ vlc_object_t *p_this = vlclua_get_this( L );
+ const char *psz_host = luaL_checkstring( L, 1 );
+ int i_port = luaL_checkint( L, 2 );
+ int i_fd = net_Connect( p_this, psz_host, i_port, SOCK_STREAM, IPPROTO_TCP );
+ lua_pushinteger( L, i_fd );
+ return 1;
+}
+
static int vlclua_net_close( lua_State *L )
{
int i_fd = luaL_checkint( L, 1 );
size_t i_len = luaL_optint( L, 2, 1 );
char psz_buffer[i_len];
i_len = recv( i_fd, psz_buffer, i_len, 0 );
- lua_pushlstring( L, psz_buffer, i_len );
- return 1;
+ if( i_len > 0 )
+ {
+ lua_pushlstring( L, psz_buffer, i_len );
+ return 1;
+ }
+ else
+ return 0;
}
/*****************************************************************************
static const luaL_Reg vlclua_net_reg[] = {
{ "url_parse", vlclua_url_parse },
{ "listen_tcp", vlclua_net_listen_tcp },
+ { "connect_tcp", vlclua_net_connect_tcp },
{ "close", vlclua_net_close },
{ "send", vlclua_net_send },
{ "recv", vlclua_net_recv },