aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludovic.courtes@inria.fr>2022-01-06 10:23:43 +0100
committerLudovic Courtès <ludo@gnu.org>2022-01-08 23:27:42 +0100
commit5c354c204d288439ae5783aae34addaf2004c7a0 (patch)
tree0787ace71f3a1406db814f407d7bc1ed07e7b813
parentc487b05d5fd1f27f9515483f6ba5a86bad2a9f45 (diff)
downloadguix-5c354c204d288439ae5783aae34addaf2004c7a0.tar.gz
guix-5c354c204d288439ae5783aae34addaf2004c7a0.zip
services: networking: Add netmask to loopback address.
Previously, we would get a fishy 127.0.0.1/0 interface: $ ip a show dev lo 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet 127.0.0.1/0 scope global lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever With this change, we get nothing but the "/8" version: $ ip a show dev lo 1: lo: <LOOPBACK,MULTICAST,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope global lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever Reported by Yann Dupont <Yann.Dupont@univ-nantes.fr>. * gnu/services/base.scm (assert-valid-address): Remove special cases for 127.0.0.1 and ::1. (%loopback-static-networking): Add "/8".
-rw-r--r--gnu/services/base.scm10
1 files changed, 3 insertions, 7 deletions
diff --git a/gnu/services/base.scm b/gnu/services/base.scm
index 88869e40d2..e46bb591a9 100644
--- a/gnu/services/base.scm
+++ b/gnu/services/base.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2013-2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2016 Alex Kost <alezost@gmail.com>
;;; Copyright © 2015, 2016, 2020 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
@@ -2393,11 +2393,7 @@ Linux @dfn{kernel mode setting} (KMS).")))
(define-compile-time-procedure (assert-valid-address (address string?))
"Ensure ADDRESS has a valid netmask."
- (unless (or (cidr->netmask address)
- (and=> (false-if-exception (inet-pton AF_INET address))
- (cut = INADDR_LOOPBACK <>))
- (and=> (false-if-exception (inet-pton AF_INET6 address))
- (cut = 1 <>)))
+ (unless (cidr->netmask address)
(raise
(make-compound-condition
(formatted-message (G_ "address '~a' lacks a network mask")
@@ -2741,7 +2737,7 @@ to handle."
(static-networking
(addresses (list (network-address
(device "lo")
- (value "127.0.0.1"))))
+ (value "127.0.0.1/8"))))
(requirement '())
(provision '(loopback))))