Issue with reading data on socket
sai koushik
saikoushik539 at gmail.com
Thu Oct 13 08:12:00 CEST 2011
Hi ,
i tried to crate a socket client using libev , and this client has to
listen for data from the server.
and i tried as below
ev_io stdin_watcher;
....
sock_fd = socket(PF_UNIX, SOCK_STREAM, 0);
memset(&addr, 0, sizeof(addr));
addr.sun_family = AF_UNIX;
strcpy(addr.sun_path, ifname);
err = connect(sock_fd, (struct sockaddr *) &addr, sizeof(addr));
int flags=0;
fcntl(sock_fd, F_SETFL, flags | O_NONBLOCK);
ev_io_init(&stdin_watcher,stdin_cb, sock_fd, EV_READ);
ev_io_start (EV_DEFAULT_UC_ &stdin_watcher);
....
and callback is
static void stdin_cb (EV_P_ ev_io *w, int revents)
{
printf("\n callback \n");
}
issue is when i tried to run client program callback is getting invoked
forever and it is going into infinte loop.
i didn`t used ev_loop.
Is above code is in proper way of reading data from from server?
any help?
Thanks
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.schmorp.de/pipermail/libev/attachments/20111013/d6f5e9a1/attachment.html>
More information about the libev
mailing list