Changeset cc227c7270cfc3ba47f988df3cdaf232a41a8f34

Show
Ignore:
Timestamp:
01/21/08 18:12:41 (8 months ago)
Author:
Rémi Denis-Courmont <rem@videolan.org>
git-committer:
Rémi Denis-Courmont <rem@videolan.org> 1200935561 +0000
git-parent:

[370f789fed007cb60ba145ff7af76417f2eaeee2]

git-author:
Rémi Denis-Courmont <rem@videolan.org> 1200935561 +0000
Message:

Set non-blocking mode on accepted sockets

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • include/vlc_network.h

    rcac92f5 rcc227c7  
    8787} 
    8888 
     89 
     90VLC_EXPORT( int, net_AcceptSingle, (vlc_object_t *obj, int lfd) ); 
     91 
    8992#define net_Accept(a, b, c) __net_Accept(VLC_OBJECT(a), b, c) 
    9093VLC_EXPORT( int, __net_Accept, ( vlc_object_t *, int *, mtime_t ) ); 
  • modules/control/telnet.c

    r165459a rcc227c7  
    491491                continue; 
    492492 
    493             fd = accept (ufd[ncli + i].fd, NULL, NULL); 
     493            fd = net_AcceptSingle (VLC_OBJECT(p_intf), ufd[ncli + i].fd); 
    494494            if (fd == -1) 
    495495                continue; 
  • src/network/httpd.c

    r968f7ba rcc227c7  
    25102510            httpd_client_t *cl; 
    25112511            int i_state = -1; 
    2512  
    2513             assert (ufd[nfd].fd == host->fds[nfd]); 
     2512            int fd = ufd[nfd].fd; 
     2513 
     2514            assert (fd == host->fds[nfd]); 
    25142515 
    25152516            if( ufd[nfd].revents == 0 ) 
     
    25172518 
    25182519            /* */ 
    2519             int fd = accept (ufd[nfd].fd, NULL, NULL); 
     2520            fd = accept (fd, NULL, NULL); 
    25202521            if (fd == -1) 
    25212522                continue; 
    25222523 
     2524            net_SetupSocket (fd); 
    25232525            if( p_tls != NULL ) 
    25242526            { 
  • src/network/tcp.c

    r4f02842 rcc227c7  
    259259 
    260260 
     261int net_AcceptSingle (vlc_object_t *obj, int lfd) 
     262{ 
     263    int fd = accept (lfd, NULL, NULL); 
     264    if (fd == -1) 
     265    { 
     266        if (net_errno != EAGAIN) 
     267            msg_Err (obj, "accept failed (from socket %d): %m", lfd); 
     268        return -1; 
     269    } 
     270 
     271    msg_Dbg (obj, "accepted socket %d (from socket %d)", fd, lfd); 
     272    net_SetupSocket (fd); 
     273    return 0; 
     274} 
     275 
     276 
    261277/***************************************************************************** 
    262278 * __net_Accept: 
     
    313329 
    314330            int sfd = ufd[i].fd; 
    315             int fd = accept (sfd, NULL, NULL); 
     331            int fd = net_AcceptSingle (p_this, sfd); 
    316332            if (fd == -1) 
    317             { 
    318                 msg_Err (p_this, "accept failed (%m)"); 
    319333                continue; 
    320             } 
    321             net_SetupSocket (fd); 
    322334 
    323335            /* 
     
    328340            pi_fd[n - 1] = sfd; 
    329341            vlc_object_unlock (p_this); 
    330             msg_Dbg (p_this, "accepted socket %d (from socket %d)", fd, sfd); 
    331342            return fd; 
    332343        }