Changeset 455

Show
Ignore:
Timestamp:
03/01/00 16:37:40 (14 years ago)
Author:
ucaccsp
Message:

More (sorry)

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • common/trunk/tests/test_net_udp.c

    r454 r455  
    343343        /**********************************************************************/ 
    344344        printf("UDP/IP networking (FreeBSD bug)........ \n"); 
     345        randomize(buf1, BUFSIZE); 
     346        s1 = udp_init("224.2.0.1", 5000, 5000, 1); 
     347        if (s1 == NULL) { 
     348                printf("fail (parent): cannot initialize socket\n"); 
     349                return; 
     350        } 
    345351        rc = fork(); 
    346352        if (rc == -1) { 
     
    349355        } else if (rc == 0) { 
    350356                /* child */ 
    351                 s1 = udp_init("224.2.0.1", 5000, 5000, 1); 
    352                 if (s1 == NULL) { 
    353                         printf("fail: cannot initialize socket\n"); 
     357                s2 = udp_init("224.2.0.1", 5000, 5000, 1); 
     358                if (s2 == NULL) { 
     359                        printf("fail (child): cannot initialize socket\n"); 
    354360                        return; 
    355361                } 
    356                 randomize(buf1, BUFSIZE); 
    357                 if (udp_send(s1, buf1, BUFSIZE) < 0) { 
    358                         perror("fail"); 
     362                if (udp_send(s2, buf1, BUFSIZE) < 0) { 
     363                        perror("fail (child)"); 
    359364                        goto abort_bsd; 
    360365                } 
     
    362367                timeout.tv_usec = 0; 
    363368                udp_fd_zero(); 
    364                 udp_fd_set(s1); 
     369                udp_fd_set(s2); 
    365370                rc = udp_select(&timeout); 
    366371                if (rc < 0) { 
    367                         perror("fail"); 
     372                        perror("fail (child)"); 
    368373                        exit(0); 
    369374                } 
    370375                if (rc == 0) { 
    371                         printf("fail: no data waiting (no multicast loopback route?)\n"); 
    372                         exit(0); 
    373                 } 
    374                 if (!udp_fd_isset(s1)) { 
    375                         printf("fail: no data on file descriptor\n"); 
    376                         exit(0); 
    377                 } 
    378                 rc = udp_recv(s1, buf2, BUFSIZE); 
     376                        printf("fail (child): no data waiting (no multicast loopback route?)\n"); 
     377                        exit(0); 
     378                } 
     379                if (!udp_fd_isset(s2)) { 
     380                        printf("fail (child): no data on file descriptor\n"); 
     381                        exit(0); 
     382                } 
     383                rc = udp_recv(s2, buf2, BUFSIZE); 
    379384                if (rc < 0) { 
    380                         perror("fail"); 
     385                        perror("fail (child)"); 
    381386                        exit(0); 
    382387                } 
    383388                if (rc != BUFSIZE) { 
    384                         printf("fail: read size incorrect (%d != %d)\n", rc, BUFSIZE); 
     389                        printf("fail (child): read size incorrect (%d != %d)\n", rc, BUFSIZE); 
    385390                        exit(0); 
    386391                } 
    387392                if (memcmp(buf1, buf2, BUFSIZE) != 0) { 
    388                         printf("fail: buffer corrupt\n"); 
    389                         exit(0); 
    390                 } 
     393                        printf("fail (child): buffer corrupt\n"); 
     394                        exit(0); 
     395                } 
     396                udp_exit(s2); 
    391397                printf("pass (child)\n"); 
    392398                exit(1); 
    393399        } else { 
    394400                /* parent */ 
    395                 s1 = udp_init("224.2.0.1", 5000, 5000, 1); 
    396                 if (s1 == NULL) { 
    397                         printf("fail: cannot initialize socket\n"); 
    398                         return; 
    399                 } 
    400401                timeout.tv_sec  = 10; 
    401402                timeout.tv_usec = 0; 
     
    404405                rc = udp_select(&timeout); 
    405406                if (rc < 0) { 
    406                         perror("fail"); 
     407                        perror("fail (parent)"); 
    407408                        goto abort_bsd; 
    408409                } 
    409410                if (rc == 0) { 
    410                         printf("fail: no data waiting (no multicast loopback route?)\n"); 
     411                        printf("fail (parent): no data waiting (no multicast loopback route?)\n"); 
    411412                        goto abort_bsd; 
    412413                } 
    413414                if (!udp_fd_isset(s1)) { 
    414                         printf("fail: no data on file descriptor\n"); 
     415                        printf("fail (parent): no data on file descriptor\n"); 
    415416                        goto abort_bsd; 
    416417                } 
    417418                rc = udp_recv(s1, buf2, BUFSIZE); 
    418419                if (rc < 0) { 
    419                         perror("fail"); 
     420                        perror("fail (parent)"); 
    420421                        goto abort_bsd; 
    421422                } 
    422423                if (rc != BUFSIZE) { 
    423                         printf("fail: read size incorrect (%d != %d)\n", rc, BUFSIZE); 
     424                        printf("fail (parent): read size incorrect (%d != %d)\n", rc, BUFSIZE); 
    424425                        goto abort_bsd; 
    425426                } 
    426427                if (memcmp(buf1, buf2, BUFSIZE) != 0) { 
    427                         printf("fail: buffer corrupt\n"); 
     428                        printf("fail (parent): buffer corrupt\n"); 
    428429                        goto abort_bsd; 
    429430                } 
    430431                printf("pass (parent)\n"); 
    431432        } 
    432         printf("pass\n"); 
    433433abort_bsd: 
    434434        udp_exit(s1);