]> git.pld-linux.org Git - packages/util-linux.git/commitdiff
- imported OpenBSD's /sbin/nologin from fedora, doesn't hurt as to have auto/th/util-linux-2.22.2-3
authorJan Rękorajski <baggins@pld-linux.org>
Fri, 22 Mar 2013 12:59:23 +0000 (13:59 +0100)
committerJan Rękorajski <baggins@pld-linux.org>
Fri, 22 Mar 2013 12:59:23 +0000 (13:59 +0100)
  it and ease keeping compatibility with fedora-centric packages like dracut
- rel 3

nologin.8 [new file with mode: 0644]
nologin.c [new file with mode: 0644]
util-linux.spec

diff --git a/nologin.8 b/nologin.8
new file mode 100644 (file)
index 0000000..5cb1601
--- /dev/null
+++ b/nologin.8
@@ -0,0 +1,63 @@
+.\"    $OpenBSD: nologin.8,v 1.8 1999/06/04 02:45:19 aaron Exp $
+.\"    $NetBSD: nologin.8,v 1.3 1995/03/18 14:59:09 cgd Exp $
+.\"
+.\" Copyright (c) 1993
+.\"    The Regents of the University of California.  All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\"    This product includes software developed by the University of
+.\"    California, Berkeley and its contributors.
+.\" 4. Neither the name of the University nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"     @(#)nologin.8  8.1 (Berkeley) 6/19/93
+.\"
+.Dd February 15, 1997
+.Dt NOLOGIN 8
+.Os
+.Sh NAME
+.Nm nologin
+.Nd politely refuse a login
+.Sh SYNOPSIS
+.Nm nologin
+.Sh DESCRIPTION
+.Nm
+displays a message that an account is not available and
+exits non-zero.
+It is intended as a replacement shell field for accounts that
+have been disabled.
+.Pp
+If the file
+.Pa /etc/nologin.txt
+exists,
+.Nm
+displays its contents to the user instead of the default message.
+.Sh SEE ALSO
+.Xr login 1
+.Sh HISTORY
+The
+.Nm
+command appeared in
+.Bx 4.4 .
diff --git a/nologin.c b/nologin.c
new file mode 100644 (file)
index 0000000..8a51ba9
--- /dev/null
+++ b/nologin.c
@@ -0,0 +1,58 @@
+/*     $OpenBSD: nologin.c,v 1.2 1997/04/04 16:51:37 millert Exp $     */
+
+/*
+ * Copyright (c) 1997, Jason Downs.  All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS
+ * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT,
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+ * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#include <sys/types.h>
+#include <fcntl.h>
+#include <string.h>
+#include <unistd.h>
+#include <stdlib.h>
+
+/* Distinctly different from _PATH_NOLOGIN. */
+#define _PATH_NOLOGIN_TXT      "/etc/nologin.txt"
+
+#define DEFAULT_MESG   "This account is currently not available.\n"
+
+/*ARGSUSED*/
+int main(argc, argv)
+       int argc;
+       char *argv[];
+{
+       int nfd, nrd;
+       char nbuf[128];
+
+       nfd = open(_PATH_NOLOGIN_TXT, O_RDONLY);
+       if (nfd < 0) {
+               write(STDOUT_FILENO, DEFAULT_MESG, strlen(DEFAULT_MESG));
+               exit (1);
+       }
+
+       while ((nrd = read(nfd, nbuf, sizeof(nbuf))) > 0)
+               write(STDOUT_FILENO, nbuf, nrd);
+       close (nfd);
+
+       exit (1);
+}
index f2ba5766a7528bbef8c09b648ea2d8085c7bdda9..67b3230fc620f910994b25374182d05bc7073a99 100644 (file)
@@ -36,7 +36,7 @@ Summary(tr.UTF-8):    Temel sistem araçları
 Summary(uk.UTF-8):     Набір базових системних утиліт для Linux
 Name:          util-linux
 Version:       2.22.2
-Release:       2
+Release:       3
 License:       GPL
 Group:         Applications/System
 Source0:       https://www.kernel.org/pub/linux/utils/util-linux/v2.22/%{name}-%{version}.tar.xz
@@ -51,6 +51,8 @@ Source6:      su.pamd
 Source7:       su-l.pamd
 Source8:       runuser.pamd
 Source9:       runuser-l.pamd
+Source10:      nologin.c
+Source11:      nologin.8
 Patch0:                %{name}-pl.po-update.patch
 Patch1:                %{name}-ng-union-mount.patch
 Patch2:                %{name}-runuser.patch
@@ -653,6 +655,8 @@ etykietę lub UUID - statycznie skonsolidowane na potrzeby initrd.
 %patch9 -p1
 %patch10 -p1
 
+install %{SOURCE10} nologin.c
+
 %{__rm} po/stamp-po
 
 %build
@@ -755,6 +759,8 @@ export CPPFLAGS="%{rpmcppflags} -I/usr/include/ncurses -DHAVE_LSEEK64_PROTOTYPE
 
 %{__make}
 
+%{__cc} %{rpmcflags} nologin.c -o nologin
+
 %install
 rm -rf $RPM_BUILD_ROOT
 install -d $RPM_BUILD_ROOT/etc/{pam.d,rc.d/init.d,sysconfig,init,security} \
@@ -767,6 +773,9 @@ install -d $RPM_BUILD_ROOT/etc/{pam.d,rc.d/init.d,sysconfig,init,security} \
 mv $RPM_BUILD_ROOT%{_sbindir}/{addpart,delpart,partx} $RPM_BUILD_ROOT/sbin
 mv $RPM_BUILD_ROOT/sbin/raw $RPM_BUILD_ROOT%{_bindir}
 
+install nologin $RPM_BUILD_ROOT/sbin
+install %{SOURCE11} $RPM_BUILD_ROOT%{_mandir}/man8
+
 cp -p %{SOURCE2} $RPM_BUILD_ROOT/etc/pam.d/login
 install -p %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/blockdev
 cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/blockdev
@@ -885,8 +894,10 @@ fi
 
 %attr(755,root,root) /sbin/clock
 %attr(755,root,root) /sbin/hwclock*
+%attr(755,root,root) /sbin/nologin
 %{_mandir}/man8/clock.8*
 %{_mandir}/man8/hwclock.8*
+%{_mandir}/man8/nologin.8*
 %lang(es) %{_mandir}/es/man8/clock.8*
 %lang(es) %{_mandir}/es/man8/hwclock.8*
 %lang(ja) %{_mandir}/ja/man8/clock.8*
This page took 0.093992 seconds and 4 git commands to generate.