diff options
author | Ludovic Courtès <ludo@gnu.org> | 2016-03-25 17:29:36 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2016-03-25 17:29:36 +0100 |
commit | 7adbe85e60fce61d0082a9c46604a26d651cb87a (patch) | |
tree | 43f2295b341a02d05bc1ce34937121bd287b0568 | |
parent | 001dae0d7431719655f525a94dc900cc078cca99 (diff) | |
download | guix-7adbe85e60fce61d0082a9c46604a26d651cb87a.tar.gz |
syscalls: 'interface-address' can return #f.
Fixes <http://bugs.gnu.org/22612>. Reported by Danny Milosavljevic <dannym@scratchpost.org>. * tests/syscalls.scm ("network-interfaces returns one or more interfaces"): Accept 'interface-address' value of #f.
-rw-r--r-- | tests/syscalls.scm | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/tests/syscalls.scm b/tests/syscalls.scm index a57a9ca9f9..feeb74c11b 100644 --- a/tests/syscalls.scm +++ b/tests/syscalls.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2014, 2015 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2015 David Thompson <davet@gnu.org> ;;; ;;; This file is part of GNU Guix. @@ -223,7 +223,11 @@ ((interfaces ..1) (list (every interface? interfaces) (every string? (map interface-name interfaces)) - (every vector? (map interface-address interfaces)))))) + (every (lambda (sockaddr) + ;; Sometimes interfaces have no associated address. + (or (vector? sockaddr) + (not sockaddr))) + (map interface-address interfaces)))))) (test-equal "network-interfaces returns \"lo\"" (list #t (make-socket-address AF_INET (inet-pton AF_INET "127.0.0.1") 0)) |