X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;ds=sidebyside;f=tests%2Flibrary.at;h=cab8e2c9be45cb4815d4853c0332623b4a762100;hb=7f7ae89d2477e14b11c1355668366030fc590c64;hp=cf7505c97f27d2ac35572e68b7f34e981c8bb19e;hpb=965f03d85ff6288eec3919edb67d5a2d247a6625;p=openvswitch diff --git a/tests/library.at b/tests/library.at index cf7505c9..cab8e2c9 100644 --- a/tests/library.at +++ b/tests/library.at @@ -35,6 +35,33 @@ AT_CHECK([test-strtok_r], [0], [ignore]) AT_CLEANUP AT_SETUP([test byte order conversion]) -AT_KEYWORDS([xtoxll]) -AT_CHECK([test-xtoxll], [0], [ignore]) +AT_KEYWORDS([byte order]) +AT_CHECK([test-byte-order], [0], [ignore]) +AT_CLEANUP + +AT_SETUP([test unix socket -- short pathname]) +AT_CHECK([test-unix-socket x]) +AT_CLEANUP + +dnl Unix sockets with long names are problematic because the name has to +dnl go in a fixed-length field in struct sockaddr_un. Generally the limit +dnl is about 100 bytes. On Linux, we work around this by indirecting through +dnl a directory fd using /proc/self/fd/. We do not have a workaround +dnl for other platforms, so we skip the test there. +AT_SETUP([test unix socket -- long pathname]) +AT_CHECK([dnl + case `uname` in dnl ( + *[[lL]]inux*) + exit 0 + ;; dnl ( + *) + dnl Magic exit code to tell Autotest to skip this test. + exit 77 + ;; + esac +]) +dnl Linux has a 108 byte limit; this is 150 bytes long. +mkdir 012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 +cd 012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 +AT_CHECK([test-unix-socket ../012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789/socket socket]) AT_CLEANUP