Ticket #369: ioctl-1.c

File ioctl-1.c, 861 bytes (added by KO Myung-Hun, 7 years ago)

testcase for ioctl( SIOCGIFCONF ) with TCPV40HDRS

Line 
1/* ioctl( SIOCGIFCONF ) test with TCPV40HDRS */
2
3#define TCPV40HDRS
4
5#include <stdio.h>
6#include <string.h>
7
8#include <types.h>
9#include <sys/socket.h> /* socket() */
10#include <unistd.h>     /* soclose() */
11#include <sys/ioctl.h>  /* ioctl(), SIOCGIFCONF */
12#include <net/if.h>     /* struct ifreq */
13
14
15#define MAX_NICS    IFMIB_ENTRIES
16
17int main( void )
18{
19    struct ifconf ifconf;
20    struct ifreq if_list[ MAX_NICS ];
21    int s;
22    int rc;
23
24    printf("Testing ioctl( SIOCGIFCONF ) with TCPV40HDRS...\n");
25
26    s = socket( PF_INET, SOCK_RAW, 0 );
27
28    memset( if_list, 0, sizeof( if_list ));
29
30    ifconf.ifc_len = sizeof( if_list );
31    ifconf.ifc_req = if_list;
32    rc = ioctl( s, SIOCGIFCONF, &ifconf );
33
34    soclose( s );
35
36    printf("%s: rc = %d(0)\n", rc == 0 ? "PASSED" : "FAILED", rc );
37
38    return rc == -1;
39}