summaryrefslogtreecommitdiff
path: root/tests/syscalls.scm
AgeCommit message (Collapse)Author
2015-11-03build: container: Add feature test predicates.David Thompson
* gnu/build/linux-container.scm (user-namespace-supported?, unprivileged-user-namespace-supported?, setgroups-supported?): New procedures. * tests/container.scm: Use predicates. * tests/syscalls.scm: Likewise.
2015-08-27tests: Skip 'set-network-interface-address' test when running as root.Ludovic Courtès
Reported by Eric Hanchrow <eric.hanchrow@gmail.com> in <http://bugs.gnu.org/21354>. * tests/syscalls.scm ("set-network-interface-address"): Skip when (getuid) returns zero.
2015-07-25syscalls: Add 'network-interfaces', which wraps libc's 'getifaddrs'.Ludovic Courtès
Based on discussions with Rohan Prinja <rohan.prinja@gmail.com>. * guix/build/syscalls.scm (<interface>): New record type. (write-interface, values->interface, unfold-interface-list, network-interfaces, free-ifaddrs): New procedures. (ifaddrs): New C struct. (%struct-ifaddrs-type, %sizeof-ifaddrs): New macros. * tests/syscalls.scm ("network-interfaces returns one or more interfaces", "network-interfaces returns \"lo\""): New tests.
2015-07-25syscalls: Rename 'network-interfaces' and 'all-network-interfaces'.Ludovic Courtès
* guix/build/syscalls.scm (network-interfaces): Rename to... (network-interface-names): ... this. (all-network-interfaces): Rename to... (all-network-interface-names): ... this. * gnu/services/networking.scm (dhcp-client-service): Adjust accordingly. * tests/syscalls.scm ("all-network-interfaces"): Rename to... ("all-network-interface-names"): ... this, and adjust accordingly. ("network-interfaces"): Rename to... ("network-interface-names"): ... this, and adjust accordingly.
2015-07-10tests: Skip namespace-related tests when that feature is missing.Ludovic Courtès
* tests/syscalls.scm ("clone", "setns", "pivot-root"): Skip unless (user-namespace (getpid)) exists.
2015-07-07build: syscalls: Add pivot-root.David Thompson
* guix/build/syscalls.scm (pivot-root): New procedure. * tests/syscalls.scm ("pivot-root"): New test.
2015-07-07build: syscalls: Add setns.David Thompson
* guix/build/syscalls.scm (setns): New procedure. * tests/syscalls.scm ("setns"): New test. squash: setns
2015-07-07build: syscalls: Add clone.David Thompson
* guix/build/syscalls.scm (clone): New procedure. (CLONE_NEWNS, CLONE_NEWUTS, CLONE_NEWIPC, CLONE_NEWUSER, CLONE_NEWPID, CLONE_NEWNET): New variables. * tests/syscalls.scm ("clone"): New test.
2015-07-07build: syscalls: Add mkdtemp!David Thompson
* guix/build/syscalls.scm (mkdtemp!): New procedure. * tests/syscalls.scm ("mkdtemp!"): New test.
2015-04-06tests: Deal with 'mount-points' not returning "/".Ludovic Courtès
Fixes <http://bugs.gnu.org/20261>. Reported by Mark H Weaver <mhw@netris.org>. * tests/syscalls.scm ("mount-points"): Check for a few other likely mount points in addition to "/".
2015-01-19tests: Adjust syscall tests for 2.6ish Linux.Ludovic Courtès
* tests/syscalls.scm ("set-network-interface-flags", "set-network-interface-address"): Accept EACCES as a valid result.
2014-12-19syscalls: Add more procedures for network interfaces.Ludovic Courtès
* guix/build/syscalls.scm (sizeof*, type-size, write-type, write-types, read-type, read-types, define-c-struct): New macros. (SIOCSIFFLAGS, SIOCGIFADDR, SIOCSIFADDR): New variables. (sockaddr-in, sockaddr-in6): New C structs. (write-socket-address!, read-socket-address, set-network-interface-flags, set-network-interface-address, network-interface-address, configure-network-interface): New procedures.
2014-11-10syscalls: Add 'mount-points'.Ludovic Courtès
* guix/build/syscalls.scm (mount-points): New procedure. * tests/syscalls.scm ("mount-points"): New test.
2014-10-12syscalls: Accept ENOENT in the 'swapoff' test.Ludovic Courtès
Fixes <http://bugs.gnu.org/18690>. Reported by Philip Woods <elzairthesorcerer@gmail.com>. * tests/syscalls.scm ("swapoff, EINVAL/EPERM"): Rename to... ("swapoff, ENOENT/EINVAL/EPERM"): ... this. Add ENOENT to the list of possible return values.
2014-09-18syscalls: Add 'swapon' and 'swapoff'.Ludovic Courtès
* guix/build/syscalls.scm (swapon, swapoff): New procedures. * tests/syscalls.scm ("swapon, ENOENT/EPERM", "swapoff, EINVAL/EPERM"): New tests.
2014-09-14syscalls: Add 'all-network-interfaces'.Ludovic Courtès
* guix/build/syscalls.scm (network-interfaces): Update docstring. (%interface-line): New variable. (all-network-interfaces): New procedure. * tests/syscalls.scm ("all-network-interfaces"): New test. ("network-interfaces"): Change to make sure the result is a subset of (all-network-interfaces).
2014-09-14syscalls: Add 'network-interface-flags'.Ludovic Courtès
* guix/build/syscalls.scm (SIOCGIFFLAGS, IFF_UP, IFF_BROADCAST, IFF_LOOPBACK, IF_NAMESIZE): New variables. (network-interface-flags, loopback-network-interface?): New procedures. * tests/syscalls.scm ("network-interface-flags", "loopback-network-interface?"): New tests.
2014-09-14syscalls: Add 'network-interfaces'.Ludovic Courtès
* guix/build/syscalls.scm (SIOCGIFCONF, ifconf-struct, ifreq-struct-size): New variables. (%ioctl, bytevector->string-list, network-interfaces): New procedures. * tests/syscalls.scm ("network-interfaces"): New test.
2014-05-27syscalls: Be more permissive in 'umount' test.Ludovic Courtès
* tests/syscalls.scm ("umount, ENOENT"): Rename to... ("umount, ENOENT/EPERM"): ... this. Accept EPERM as a valid return value.
2014-05-10Add (guix build syscalls).Ludovic Courtès
* guix/build/syscalls.scm, tests/syscalls.scm: New files. * Makefile.am (MODULES): Add guix/build/syscalls.scm. (SCM_TESTS): Add tests/syscalls.scm. * guix/utils.scm (%libc-errno-pointer, errno): Remove; take from (guix build syscalls).