From: Thadeu Lima de Souza Cascardo Date: Mon, 31 Jul 2023 18:59:42 +0000 (-0300) Subject: tty: n_gsm: require CAP_NET_ADMIN to attach N_GSM0710 ldisc X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=2d154a54c58f9c8375bfbea9f7e51ba3bfb2e43a;p=users%2Fdwmw2%2Flinux.git tty: n_gsm: require CAP_NET_ADMIN to attach N_GSM0710 ldisc commit 67c37756898a5a6b2941a13ae7260c89b54e0d88 upstream. Any unprivileged user can attach N_GSM0710 ldisc, but it requires CAP_NET_ADMIN to create a GSM network anyway. Require initial namespace CAP_NET_ADMIN to do that. Signed-off-by: Thadeu Lima de Souza Cascardo Link: https://lore.kernel.org/r/20230731185942.279611-1-cascardo@canonical.com Cc: Salvatore Bonaccorso Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/tty/n_gsm.c b/drivers/tty/n_gsm.c index 2337402f95df7..4ff3010a82eaa 100644 --- a/drivers/tty/n_gsm.c +++ b/drivers/tty/n_gsm.c @@ -2827,6 +2827,9 @@ static int gsmld_open(struct tty_struct *tty) { struct gsm_mux *gsm; + if (!capable(CAP_NET_ADMIN)) + return -EPERM; + if (tty->ops->write == NULL) return -EINVAL;