static void handle_master(struct client *master)
{
+ g_return_if_fail(master!=NULL);
+
+ for (;;) {
+char packet[0x10000];
ssize_t gotlen;
struct sockaddr_in sockaddr_in_from;
-char packet[0x10000];
struct client *client;
struct sockaddr_in sockaddr_in_server;
socklen_t sockaddr_in_from_length;
-
- g_return_if_fail(master!=NULL);
-
- sockaddr_in_from_length=sizeof(sockaddr_in_from);
- while (-1!=(gotlen=recvfrom(
- master->gpollfd.fd, /* s */
- packet, /* buf */
- sizeof(packet), /* len */
- 0, /* flags */
- (struct sockaddr *)&sockaddr_in_from, /* from */
- &sockaddr_in_from_length))) { /* fromlen */
GList *clientl;
+ sockaddr_in_from_length=sizeof(sockaddr_in_from);
+ if (-1==(gotlen=recvfrom(
+ master->gpollfd.fd, /* s */
+ packet, /* buf */
+ sizeof(packet), /* len */
+ 0, /* flags */
+ (struct sockaddr *)&sockaddr_in_from, /* from */
+ &sockaddr_in_from_length))) /* fromlen */
+ break;
+
if (sockaddr_in_from_length!=sizeof(sockaddr_in_from)) /* FIXME: errors reporting */
continue;
static void handle_probe(struct client *probe)
{
+ g_return_if_fail(probe!=NULL);
+
+ for (;;) {
ssize_t gotlen;
struct sockaddr_in sockaddr_in_from;
char packet[0x10000];
socklen_t sockaddr_in_from_length;
- g_return_if_fail(probe!=NULL);
-
- sockaddr_in_from_length=sizeof(sockaddr_in_from);
- while (-1!=(gotlen=recvfrom(
- master->gpollfd.fd, /* s */
- packet, /* buf */
- sizeof(packet), /* len */
- 0, /* flags */
- (struct sockaddr *)&sockaddr_in_from, /* from */
- &sockaddr_in_from_length))) { /* fromlen */
+ sockaddr_in_from_length=sizeof(sockaddr_in_from);
+ if (-1==(gotlen=recvfrom(
+ master->gpollfd.fd, /* s */
+ packet, /* buf */
+ sizeof(packet), /* len */
+ 0, /* flags */
+ (struct sockaddr *)&sockaddr_in_from, /* from */
+ &sockaddr_in_from_length))) /* fromlen */
+ break;
if (sockaddr_in_from_length!=sizeof(sockaddr_in_from)) /* FIXME: errors reporting */
continue;
static void handle_client(struct client *client)
{
+ g_return_if_fail(client!=NULL);
+ g_return_if_fail(master!=NULL);
+
+ for (;;) {
ssize_t gotlen;
struct sockaddr_in sockaddr_in_from;
char packet [0x10000];
socklen_t sockaddr_in_from_length;
- g_return_if_fail(client!=NULL);
- g_return_if_fail(master!=NULL);
-
- while (-1!=(gotlen=recvfrom(
- client->gpollfd.fd, /* s */
- packet, /* buf */
- sizeof(packet), /* len */
- 0, /* flags */
- (struct sockaddr *)&sockaddr_in_from, /* from */
- &sockaddr_in_from_length))) { /* fromlen */
+ sockaddr_in_from_length=sizeof(sockaddr_in_from);
+ if (-1==(gotlen=recvfrom(
+ client->gpollfd.fd, /* s */
+ packet, /* buf */
+ sizeof(packet), /* len */
+ 0, /* flags */
+ (struct sockaddr *)&sockaddr_in_from, /* from */
+ &sockaddr_in_from_length))) /* fromlen */
+ break;
if (sockaddr_in_from_length!=sizeof(sockaddr_in_from)) /* FIXME: errors reporting */
continue;
client_touch(client);