// RUN: %clangxx -O0 -g %s -o %t // // bionic/netdb.cpp is not implemented. // UNSUPPORTED: android #include #include #include #include void test1() { struct protoent *ptp = getprotoent(); assert(ptp && ptp->p_name); assert(ptp->p_proto == 0); char **aliases = ptp->p_aliases; while (aliases) { printf("%s\n", *aliases); aliases++; } endprotoent(); } void test2() { struct protoent *ptp = getprotobyname("tcp"); assert(ptp && ptp->p_name); assert(ptp->p_proto == 6); char **aliases = ptp->p_aliases; while (aliases) { printf("%s\n", *aliases); aliases++; } endprotoent(); } void test3() { struct protoent *ptp = getprotobynumber(1); assert(ptp && ptp->p_name); assert(ptp->p_proto == 1); char **aliases = ptp->p_aliases; while (aliases) { printf("%s\n", *aliases); aliases++; } endprotoent(); } void test4() { setprotoent(1); struct protoent *ptp = getprotobynumber(1); ptp = getprotobynumber(2); assert(ptp && ptp->p_name); assert(ptp->p_proto == 2); endprotoent(); } int main(void) { printf("protoent\n"); test1(); test2(); test3(); test4(); return 0; }