All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/7] pull: various small changes
@ 2015-06-28 19:43 Sami Kerola
  2015-06-28 19:43 ` [PATCH 1/7] last-deprecated: remove from source tree Sami Kerola
                   ` (7 more replies)
  0 siblings, 8 replies; 11+ messages in thread
From: Sami Kerola @ 2015-06-28 19:43 UTC (permalink / raw)
  To: util-linux; +Cc: Sami Kerola

Hi,

Almost all in this change set is trivial stuff, apart from deprecation
proposals.  I think scrubbing some junk makes sense when ever possible.
But deprecations can be tricky, so it would be great to hear if I
assumptions about reset(1) and the last-deprecated are right or wrong.

People who prefer fetching from remote git here's what you need: 

----------------------------------------------------------------
The following changes since commit 13c551f259423d97e6edf1380d5d9e93d77ebc89:
  cfdisk: fix condition logic [cppcheck] (2015-06-25 12:08:53 +0200)
are available in the git repository at:
  git://github.com/kerolasa/lelux-utiliteetit.git misc
for you to fetch changes up to 28165575552a4cb8fe919eca367ab070070d371a:
  reset: deprecate the script, and remove reset.033c (2015-06-28 19:27:36 +0100)
----------------------------------------------------------------

Sami Kerola (7):
  last-deprecated: remove from source tree
  zramctl: add link to kernel documentation
  cal: fix memory leaks [valgrind]
  docs: unify mkswap(8) with swapon(8) about holes warning
  build-sys: add minimal whitespace build directory support
  getopt: use $(...) command substitution in example script [shellcheck]
  reset: deprecate the script, and remove reset.033c

 Documentation/deprecated.txt  |   6 +-
 autogen.sh                    |   7 +-
 configure.ac                  |  15 +-
 disk-utils/mkswap.8           |  14 +-
 login-utils/Makemodule.am     |   7 -
 login-utils/last-deprecated.1 |  62 ------
 login-utils/last-deprecated.c | 483 ------------------------------------------
 misc-utils/cal.c              |   3 +
 misc-utils/getopt-parse.bash  |   4 +-
 sys-utils/zramctl.8           |   4 +
 term-utils/Makemodule.am      |   1 -
 term-utils/reset              |   6 +
 term-utils/reset.033c         |  11 -
 13 files changed, 41 insertions(+), 582 deletions(-)
 delete mode 100644 login-utils/last-deprecated.1
 delete mode 100644 login-utils/last-deprecated.c
 delete mode 100755 term-utils/reset.033c

-- 
2.4.4


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH 1/7] last-deprecated: remove from source tree
  2015-06-28 19:43 [PATCH 0/7] pull: various small changes Sami Kerola
@ 2015-06-28 19:43 ` Sami Kerola
  2015-06-28 19:43 ` [PATCH 2/7] zramctl: add link to kernel documentation Sami Kerola
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 11+ messages in thread
From: Sami Kerola @ 2015-06-28 19:43 UTC (permalink / raw)
  To: util-linux; +Cc: Sami Kerola

From: Sami Kerola <sami.kerola@lastminute.com>

The last/lastb(1) from sysvinit has been around for about two years,
and the better implementation is already part of releases 2.24 to 2.26.
It should be safe to remove the unused last code from the source tree.

Reference: ce60272039ea11952b15fefb653892dd0da02217
Signed-off-by: Sami Kerola <sami.kerola@lastminute.com>
---
 Documentation/deprecated.txt  |   5 -
 configure.ac                  |  10 -
 login-utils/Makemodule.am     |   7 -
 login-utils/last-deprecated.1 |  62 ------
 login-utils/last-deprecated.c | 483 ------------------------------------------
 5 files changed, 567 deletions(-)
 delete mode 100644 login-utils/last-deprecated.1
 delete mode 100644 login-utils/last-deprecated.c

diff --git a/Documentation/deprecated.txt b/Documentation/deprecated.txt
index 11f4d1f..a32833f 100644
--- a/Documentation/deprecated.txt
+++ b/Documentation/deprecated.txt
@@ -91,11 +91,6 @@ What:   losetup output format without --list
 What:	tunelp
 Why:	parallel port printers are probably almost extinct devices
 
---------------------------
-
-What:	deprecated_last(1)
-Why:	nobody uses this implementation
-
 ----------------------------
 
 The Single UNIX(TM) Specification, Version 2
diff --git a/configure.ac b/configure.ac
index 5b95d09..58feb22 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1471,22 +1471,12 @@ UL_BUILD_INIT([kill])
 UL_REQUIRES_LINUX([kill])
 AM_CONDITIONAL([BUILD_KILL], [test "x$build_kill" = xyes])
 
-dnl Don't use UL_DEFAULT_ENABLE() here, deprecated stuff has to be insensitive
-dnl to --enable-all-programs.
-AC_ARG_ENABLE([deprecated-last],
-  AS_HELP_STRING([--enable-deprecated-last], [build old deprecated last]),
-  [], [enable_deprecated_last=no]
-)
-UL_BUILD_INIT([deprecated_last])
-AM_CONDITIONAL([BUILD_DEPRECATED_LAST], [test "x$build_deprecated_last" = xyes])
-
 
 AC_ARG_ENABLE([last],
   AS_HELP_STRING([--disable-last], [do not build last]),
   [], [UL_DEFAULT_ENABLE([last], [check])]
 )
 UL_BUILD_INIT([last])
-UL_CONFLICTS_BUILD([last], [deprecated_last], [old deprecated last version])
 AM_CONDITIONAL([BUILD_LAST], [test "x$build_last" = xyes])
 
 
diff --git a/login-utils/Makemodule.am b/login-utils/Makemodule.am
index 1b413c6..fb58b46 100644
--- a/login-utils/Makemodule.am
+++ b/login-utils/Makemodule.am
@@ -13,13 +13,6 @@ install-exec-hook-last:
 INSTALL_EXEC_HOOKS += install-exec-hook-last
 endif
 
-if BUILD_DEPRECATED_LAST
-usrbin_exec_PROGRAMS += last
-dist_man_MANS += login-utils/last-deprecated.1
-last_SOURCES = login-utils/last-deprecated.c
-endif # BUILD_DEPRECATED_LAST
-
-
 if BUILD_SULOGIN
 sbin_PROGRAMS += sulogin
 dist_man_MANS += login-utils/sulogin.8
diff --git a/login-utils/last-deprecated.1 b/login-utils/last-deprecated.1
deleted file mode 100644
index beb6917..0000000
--- a/login-utils/last-deprecated.1
+++ /dev/null
@@ -1,62 +0,0 @@
-.TH LAST 1 "March 1992" "util-linux" "User Commands"
-.SH NAME
-last \(em indicate last logins by user or terminal
-.SH SYNOPSIS
-.ad l
-.B last
-.RB [ \-\fP\fInumber\fP ]
-.RB [ \-f
-.IR filename ]
-.RB [ \-t
-.IR tty ]
-.RB [ \-h
-.IR hostname ]
-.RB [ \-i
-.IR address ]
-.RB [ \-l ]
-.RB [ \-y ]
-.RI [ name ...]
-.ad b
-.SH DESCRIPTION
-\fBLast\fP looks back in the \fBwtmp\fP file which records all logins
-and logouts for information about a user, a teletype or any group of
-users and teletypes.  Arguments specify names of users or teletypes of
-interest.  If multiple arguments are given, the information which
-applies to any of the arguments is printed.  For example ``\fBlast root
-console\fP'' would list all of root's sessions as well as all sessions
-on the console terminal.  \fBLast\fP displays the sessions of the
-specified users and teletypes, most recent first, indicating the times
-at which the session began, the duration of the session, and the
-teletype which the session took place on.  If the session is still
-continuing or was cut short by a reboot, \fBlast\fP so indicates.
-.LP
-The pseudo-user \fBreboot\fP logs in at reboots of the system.
-.LP
-\fBLast\fP with no arguments displays a record of all logins and
-logouts, in reverse order.
-.LP
-If \fBlast\fP is interrupted, it indicates how far the search has
-progressed in \fBwtmp\fP.  If interrupted with a quit signal \fBlast\fP
-indicates how far the search has progressed so far, and the search
-continues.
-.SH OPTIONS
-.IP \fB\-\fP\fInumber\fP
-limit the number of entries displayed to that specified by \fInumber\fP.
-.IP "\fB\-f\fP \fIfilename\fP"
-Use \fIfilename\fP as the name of the accounting file instead of
-.BR /var/log/wtmp .
-.IP "\fB\-h\fP \fIhostname\fP"
-List only logins from \fIhostname\fP.
-.IP "\fB\-i\fP \fIIP address\fP"
-List only logins from \fIIP address\fP.
-.IP "\fB\-l\fP"
-List IP addresses of remote hosts instead of truncated host names.
-.IP "\fB\-t\fP \fItty\fP"
-List only logins on \fItty\fP.
-.IP "\fB\-y\fP"
-Also report year of dates.
-.SH FILES
-/var/log/wtmp \(em login data base
-.SH AVAILABILITY
-The last command is part of the util-linux package and is available from
-ftp://ftp.kernel.org/pub/linux/utils/util-linux/.
diff --git a/login-utils/last-deprecated.c b/login-utils/last-deprecated.c
deleted file mode 100644
index d3fdc8c..0000000
--- a/login-utils/last-deprecated.c
+++ /dev/null
@@ -1,483 +0,0 @@
-/*
- * Berkeley last for Linux. Currently maintained by poe@daimi.aau.dk at
- * ftp://ftp.daimi.aau.dk/pub/linux/poe/admutil*
- *
- * Copyright (c) 1987 Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that the above copyright notice and this paragraph are
- * duplicated in all such forms and that any documentation,
- * advertising materials, and other materials related to such
- * distribution and use acknowledge that the software was developed
- * by the University of California, Berkeley.  The name of the
- * University may not be used to endorse or promote products derived
- * from this software without specific prior written permission.
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
- /* 1999-02-22 Arkadiusz Miśkiewicz <misiek@pld.ORG.PL>
-  * - added Native Language Support
-  */
-
- /* 2001-02-14 Marek Zelem <marek@fornax.sk>
-  * - using mmap() on Linux - great speed improvement
-  */
-
-/*
- * This command is deprecated.  The utility is in maintenance mode,
- * meaning we keep them in source tree for backward compatibility
- * only.  Do not waste time making this command better, unless the
- * fix is about security or other very critical issue.
- *
- * See Documentation/deprecated.txt for more information.
- */
-
-/*
- * last
- */
-#include <sys/param.h>
-#include <sys/stat.h>
-#include <sys/file.h>
-#include <sys/types.h>
-#include <sys/mman.h>
-#include <signal.h>
-#include <string.h>
-#include <time.h>
-#include <utmp.h>
-#include <stdio.h>
-#include <getopt.h>
-#include <stdlib.h>
-#include <unistd.h>
-
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
-
-#include "closestream.h"
-#include "pathnames.h"
-#include "nls.h"
-#include "xalloc.h"
-#include "c.h"
-
-#define	SECDAY	(24*60*60)			/* seconds in a day */
-#define	NO	0				/* false/no */
-#define	YES	1				/* true/yes */
-
-static struct utmp	utmpbuf;
-
-#define	HMAX	(int)sizeof(utmpbuf.ut_host)	/* size of utmp host field */
-#define	LMAX	(int)sizeof(utmpbuf.ut_line)	/* size of utmp tty field */
-#define	NMAX	(int)sizeof(utmpbuf.ut_name)	/* size of utmp name field */
-
-/* maximum sizes used for printing */
-/* probably we want a two-pass version that computes the right length */
-#define P_HMAX	min(HMAX, 16)
-#define P_LMAX	min(LMAX, 8)
-#define P_NMAX	min(NMAX, 16)
-
-typedef struct arg {
-	char	*name;				/* argument */
-#define	HOST_TYPE	-2
-#define	TTY_TYPE	-3
-#define	USER_TYPE	-4
-#define INET_TYPE	-5
-	int	type;				/* type of arg */
-	struct arg	*next;			/* linked list pointer */
-} ARG;
-ARG	*arglist;				/* head of linked list */
-
-typedef struct ttytab {
-	long	logout;				/* log out time */
-	char	tty[LMAX + 1];			/* terminal name */
-	struct ttytab	*next;			/* linked list pointer */
-} TTY;
-TTY	*ttylist;				/* head of linked list */
-
-static long	currentout,			/* current logout value */
-		maxrec;				/* records to display */
-static char	*file = _PATH_WTMP;		/* wtmp file */
-
-static int	doyear = 0;			/* output year in dates */
-static int	dolong = 0;			/* print also ip-addr */
-
-static void wtmp(void);
-static void addarg(int, char *);
-static void hostconv(char *);
-static void onintr(int);
-static int want(struct utmp *, int);
-TTY *addtty(char *);
-static char *ttyconv(char *);
-
-int
-main(int argc, char **argv) {
-	int	ch;
-
-	setlocale(LC_ALL, "");
-	bindtextdomain(PACKAGE, LOCALEDIR);
-	textdomain(PACKAGE);
-	atexit(close_stdout);
-
-	while ((ch = getopt(argc, argv, "0123456789yli:f:h:t:")) != -1)
-		switch((char)ch) {
-		case '0': case '1': case '2': case '3': case '4':
-		case '5': case '6': case '7': case '8': case '9':
-			/*
-			 * kludge: last was originally designed to take
-			 * a number after a dash.
-			 */
-			if (!maxrec)
-				maxrec = atol(argv[optind - 1] + 1);
-			break;
-		case 'f':
-			file = optarg;
-			break;
-		case 'h':
-			hostconv(optarg);
-			addarg(HOST_TYPE, optarg);
-			break;
-		case 't':
-			addarg(TTY_TYPE, ttyconv(optarg));
-			break;
-		case 'y':
-			doyear = 1;
-			break;
-		case 'l':
-			dolong = 1;
-			break;
-		case 'i':
-			addarg(INET_TYPE, optarg);
-			break;
-		case '?':
-		default:
-			fputs(_("usage: last [-#] [-f file] [-t tty] [-h hostname] [user ...]\n"), stderr);
-			exit(EXIT_FAILURE);
-		}
-	for (argv += optind; *argv; ++argv) {
-#define	COMPATIBILITY
-#ifdef	COMPATIBILITY
-		/* code to allow "last p5" to work */
-		addarg(TTY_TYPE, ttyconv(*argv));
-#endif
-		addarg(USER_TYPE, *argv);
-	}
-	wtmp();
-
-	return EXIT_SUCCESS;
-}
-
-static char *utmp_ctime(struct utmp *u)
-{
-	time_t t = (time_t) u->ut_time;
-	return ctime(&t);
-}
-
-/*
- * print_partial_line --
- *	print the first part of each output line according to specified format
- */
-static void
-print_partial_line(struct utmp *bp) {
-    char *ct;
-
-    ct = utmp_ctime(bp);
-    printf("%-*.*s  %-*.*s ", P_NMAX, P_NMAX, bp->ut_name,
-	   P_LMAX, P_LMAX, bp->ut_line);
-
-    if (dolong) {
-	if (bp->ut_addr) {
-	    struct in_addr foo;
-	    foo.s_addr = bp->ut_addr;
-	    printf("%-*.*s ", P_HMAX, P_HMAX, inet_ntoa(foo));
-	} else {
-	    printf("%-*.*s ", P_HMAX, P_HMAX, "");
-	}
-    } else {
-	printf("%-*.*s ", P_HMAX, P_HMAX, bp->ut_host);
-    }
-
-    if (doyear) {
-	printf("%10.10s %4.4s %5.5s ", ct, ct + 20, ct + 11);
-    } else {
-	printf("%10.10s %5.5s ", ct, ct + 11);
-    }
-}
-
-/*
- * wtmp --
- *	read through the wtmp file
- */
-static void
-wtmp(void) {
-	register struct utmp	*bp;		/* current structure */
-	register TTY	*T;			/* tty list entry */
-	long	delta;				/* time difference */
-	char *crmsg = NULL;
-	char *ct = NULL;
-	int fd;
-	struct utmp *utl;
-	struct stat st;
-	int utl_len;
-	int listnr = 0;
-	int i;
-
-	utmpname(file);
-
-	{
-#if defined(_HAVE_UT_TV)
-		struct timeval tv;
-		gettimeofday(&tv, NULL);
-		utmpbuf.ut_tv.tv_sec = tv.tv_sec;
-		utmpbuf.ut_tv.tv_usec = tv.tv_usec;
-#else
-		time_t t;
-		time(&t);
-		utmpbuf.ut_time = t;
-#endif
-	}
-
-	(void)signal(SIGINT, onintr);
-	(void)signal(SIGQUIT, onintr);
-
-	if ((fd = open(file,O_RDONLY)) < 0)
-		err(EXIT_FAILURE, _("cannot open %s"), file);
-
-	fstat(fd, &st);
-	utl_len = st.st_size;
-	utl = mmap(NULL, utl_len, PROT_READ|PROT_WRITE,
-		   MAP_PRIVATE|MAP_FILE, fd, 0);
-	if (utl == NULL)
-		err(EXIT_FAILURE, _("%s: mmap failed"), file);
-
-	listnr = utl_len/sizeof(struct utmp);
-
-	if(listnr)
-		ct = utmp_ctime(&utl[0]);
-
-	for(i = listnr - 1; i >= 0; i--) {
-		bp = utl+i;
-		/*
-		 * if the terminal line is '~', the machine stopped.
-		 * see utmp(5) for more info.
-		 */
-		if (!strncmp(bp->ut_line, "~", LMAX)) {
-		    /*
-		     * utmp(5) also mentions that the user
-		     * name should be 'shutdown' or 'reboot'.
-		     * Not checking the name causes e.g. runlevel
-		     * changes to be displayed as 'crash'. -thaele
-		     */
-		    if (!strncmp(bp->ut_user, "reboot", NMAX) ||
-			!strncmp(bp->ut_user, "shutdown", NMAX)) {
-			/* everybody just logged out */
-			for (T = ttylist; T; T = T->next)
-			    T->logout = -bp->ut_time;
-		    }
-
-		    currentout = -bp->ut_time;
-		    crmsg = (strncmp(bp->ut_name, "shutdown", NMAX)
-			    ? "crash" : "down ");
-		    if (!bp->ut_name[0])
-			(void)strcpy(bp->ut_name, "reboot");
-		    if (want(bp, NO)) {
-			ct = utmp_ctime(bp);
-			if(bp->ut_type != LOGIN_PROCESS) {
-			    print_partial_line(bp);
-			    putchar('\n');
-			}
-			if (maxrec && !--maxrec)
-			    return;
-		    }
-		    continue;
-		}
-		/* find associated tty */
-		for (T = ttylist;; T = T->next) {
-		    if (!T) {
-			/* add new one */
-			T = addtty(bp->ut_line);
-			break;
-		    }
-		    if (!strncmp(T->tty, bp->ut_line, LMAX))
-			break;
-		}
-		if (bp->ut_name[0] && bp->ut_type != LOGIN_PROCESS
-		    && bp->ut_type != DEAD_PROCESS
-		    && want(bp, YES)) {
-
-		    print_partial_line(bp);
-
-		    if (!T->logout)
-			puts(_("  still logged in"));
-		    else {
-			if (T->logout < 0) {
-			    T->logout = -T->logout;
-			    printf("- %s", crmsg);
-			}
-			else
-			    printf("- %5.5s", ctime(&T->logout)+11);
-			delta = T->logout - bp->ut_time;
-			if (delta < SECDAY)
-			    printf("  (%5.5s)\n", asctime(gmtime(&delta))+11);
-			else
-			    printf(" (%ld+%5.5s)\n", delta / SECDAY, asctime(gmtime(&delta))+11);
-		    }
-		    if (maxrec != -1 && !--maxrec)
-			return;
-		}
-		T->logout = bp->ut_time;
-		utmpbuf.ut_time = bp->ut_time;
-	}
-	munmap(utl,utl_len);
-	close(fd);
-	if(ct) printf(_("\nwtmp begins %s"), ct); 	/* ct already ends in \n */
-}
-
-/*
- * want --
- *	see if want this entry
- */
-static int
-want(struct utmp *bp, int check) {
-	register ARG	*step;
-
-	if (check) {
-		/*
-		 * when uucp and ftp log in over a network, the entry in
-		 * the utmp file is the name plus their process id.  See
-		 * etc/ftpd.c and usr.bin/uucp/uucpd.c for more information.
-		 */
-		if (!strncmp(bp->ut_line, "ftp", sizeof("ftp") - 1))
-			bp->ut_line[3] = '\0';
-		else if (!strncmp(bp->ut_line, "uucp", sizeof("uucp") - 1))
-			bp->ut_line[4] = '\0';
-	}
-	if (!arglist)
-		return YES;
-
-	for (step = arglist; step; step = step->next)
-		switch(step->type) {
-		case HOST_TYPE:
-			if (!strncmp(step->name, bp->ut_host, HMAX))
-				return YES;
-			break;
-		case TTY_TYPE:
-			if (!strncmp(step->name, bp->ut_line, LMAX))
-				return YES;
-			break;
-		case USER_TYPE:
-			if (!strncmp(step->name, bp->ut_name, NMAX))
-				return YES;
-			break;
-		case INET_TYPE:
-			if ((in_addr_t) bp->ut_addr == inet_addr(step->name))
-			  return YES;
-			break;
-		default:
-			abort();
-		}
-	return NO;
-}
-
-/*
- * addarg --
- *	add an entry to a linked list of arguments
- */
-static void
-addarg(int type, char *arg) {
-	register ARG	*cur;
-
-	cur = xmalloc(sizeof(ARG));
-	cur->next = arglist;
-	cur->type = type;
-	cur->name = arg;
-	arglist = cur;
-}
-
-/*
- * addtty --
- *	add an entry to a linked list of ttys
- */
-TTY *
-addtty(char *ttyname) {
-	register TTY	*cur;
-
-	cur = xmalloc(sizeof(TTY));
-	cur->next = ttylist;
-	cur->logout = currentout;
-	memcpy(cur->tty, ttyname, LMAX);
-	return(ttylist = cur);
-}
-
-/*
- * hostconv --
- *	convert the hostname to search pattern; if the supplied host name
- *	has a domain attached that is the same as the current domain, rip
- *	off the domain suffix since that's what login(1) does.
- */
-static void
-hostconv(char *arg) {
-	static int	first = 1;
-	static char	*hostdot, *name;
-
-	char	*argdot;
-
-	if (!(argdot = strchr(arg, '.')))
-		return;
-
-	if (first) {
-		first = 0;
-		name = xgethostname();
-		if (!name)
-			err(EXIT_FAILURE, _("gethostname failed"));
-
-		hostdot = strchr(name, '.');
-	}
-	if (hostdot && !strcmp(hostdot, argdot))
-		*argdot = '\0';
-}
-
-/*
- * ttyconv --
- *	convert tty to correct name.
- */
-static char *
-ttyconv(char *arg) {
-	char	*mval;
-
-	/*
-	 * kludge -- we assume that all tty's end with
-	 * a two character suffix.
-	 */
-	if (strlen(arg) == 2) {
-		/* either 6 for "ttyxx" or 8 for "console" */
-		mval = xmalloc(8);
-		if (!strncmp(arg, "co", 2))
-			(void)strcpy(mval, "console");
-		else {
-			(void)strcpy(mval, "tty");
-			(void)strncpy(mval + 3, arg, 4);
-		}
-		return mval;
-	}
-	if (!strncmp(arg, "/dev/", sizeof("/dev/") - 1))
-		return arg + 5;
-
-	return arg;
-}
-
-/*
- * onintr --
- *	on interrupt, we inform the user how far we've gotten
- */
-static void
-onintr(int signo) {
-	char	*ct;
-
-	ct = utmp_ctime(&utmpbuf);
-	printf(_("\ninterrupted %10.10s %5.5s \n"), ct, ct + 11);
-	if (signo == SIGINT)
-		_exit(EXIT_FAILURE);
-	fflush(stdout);			/* fix required for rsh */
-}
-- 
2.4.4


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH 2/7] zramctl: add link to kernel documentation
  2015-06-28 19:43 [PATCH 0/7] pull: various small changes Sami Kerola
  2015-06-28 19:43 ` [PATCH 1/7] last-deprecated: remove from source tree Sami Kerola
@ 2015-06-28 19:43 ` Sami Kerola
  2015-06-28 19:43 ` [PATCH 3/7] cal: fix memory leaks [valgrind] Sami Kerola
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 11+ messages in thread
From: Sami Kerola @ 2015-06-28 19:43 UTC (permalink / raw)
  To: util-linux; +Cc: Sami Kerola

The manual page does lacks explanation how to create zram with modprobe.

Signed-off-by: Sami Kerola <kerolasa@iki.fi>
---
 sys-utils/zramctl.8 | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/sys-utils/zramctl.8 b/sys-utils/zramctl.8
index 6f82ccf..8949e7e 100644
--- a/sys-utils/zramctl.8
+++ b/sys-utils/zramctl.8
@@ -109,6 +109,10 @@ and use it as swap device.
 # swapoff /dev/zram0
 # zramctl --reset /dev/zram0
 .fi
+.SH SEE ALSO
+.UR http://git.\:kernel.\:org\:/cgit\:/linux\:/kernel\:/git\:/torvalds\:/linux.git\:/tree\:/Documentation\:/blockdev\:/zram.txt
+Linux kernel documentation
+.UE .
 .SH AUTHORS
 .nf
 Timofey Titovets <nefelim4ag@gmail.com>
-- 
2.4.4


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH 3/7] cal: fix memory leaks [valgrind]
  2015-06-28 19:43 [PATCH 0/7] pull: various small changes Sami Kerola
  2015-06-28 19:43 ` [PATCH 1/7] last-deprecated: remove from source tree Sami Kerola
  2015-06-28 19:43 ` [PATCH 2/7] zramctl: add link to kernel documentation Sami Kerola
@ 2015-06-28 19:43 ` Sami Kerola
  2015-06-28 19:43 ` [PATCH 4/7] docs: unify mkswap(8) with swapon(8) about holes warning Sami Kerola
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 11+ messages in thread
From: Sami Kerola @ 2015-06-28 19:43 UTC (permalink / raw)
  To: util-linux; +Cc: Sami Kerola

Signed-off-by: Sami Kerola <kerolasa@iki.fi>
---
 misc-utils/cal.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/misc-utils/cal.c b/misc-utils/cal.c
index 548e567..a39c0cd 100644
--- a/misc-utils/cal.c
+++ b/misc-utils/cal.c
@@ -518,6 +518,9 @@ int main(int argc, char **argv)
 	else
 		monthly(&ctl);
 
+#if defined(HAVE_LIBNCURSES) || defined(HAVE_LIBNCURSESW) || defined(HAVE_LIBTERMCAP)
+        del_curterm(cur_term);
+#endif
 	return EXIT_SUCCESS;
 }
 
-- 
2.4.4


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH 4/7] docs: unify mkswap(8) with swapon(8) about holes warning
  2015-06-28 19:43 [PATCH 0/7] pull: various small changes Sami Kerola
                   ` (2 preceding siblings ...)
  2015-06-28 19:43 ` [PATCH 3/7] cal: fix memory leaks [valgrind] Sami Kerola
@ 2015-06-28 19:43 ` Sami Kerola
       [not found]   ` <CADNa6_39RU7RQRpd0oG1KAVT2Yo0Z1fi6roy6cQXCeNkeFQG5A@mail.gmail.com>
  2015-06-28 19:43 ` [PATCH 5/7] build-sys: add minimal whitespace build directory support Sami Kerola
                   ` (3 subsequent siblings)
  7 siblings, 1 reply; 11+ messages in thread
From: Sami Kerola @ 2015-06-28 19:43 UTC (permalink / raw)
  To: util-linux; +Cc: Sami Kerola

Signed-off-by: Sami Kerola <kerolasa@iki.fi>
---
 disk-utils/mkswap.8 | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)

diff --git a/disk-utils/mkswap.8 b/disk-utils/mkswap.8
index 0a0b715..815c23d 100644
--- a/disk-utils/mkswap.8
+++ b/disk-utils/mkswap.8
@@ -128,9 +128,19 @@ e.g.\& using a command like
 .RE
 .fi
 
-Note that a swap file must not contain any holes (so, using
+Note that a swap file must not contain any holes.  Using
 .BR cp (1)
-to create the file is not acceptable).
+to create the file is not acceptable.  Neither is use of
+.BR fallocate (1)
+on file systems that support preallocated files, such as
+.BR XFS " or " ext4 ,
+or on copy-on-write filesystems like
+.BR btrfs .
+It is recommended to use
+.BR dd (1)
+and /dev/zero to in these cases.  Please read notes from
+.BR swapon (8)
+before adding a swap file to copy-on-write filesystems.
 
 .SH ENVIRONMENT
 .IP LIBBLKID_DEBUG=all
-- 
2.4.4


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH 5/7] build-sys: add minimal whitespace build directory support
  2015-06-28 19:43 [PATCH 0/7] pull: various small changes Sami Kerola
                   ` (3 preceding siblings ...)
  2015-06-28 19:43 ` [PATCH 4/7] docs: unify mkswap(8) with swapon(8) about holes warning Sami Kerola
@ 2015-06-28 19:43 ` Sami Kerola
  2015-06-28 19:43 ` [PATCH 6/7] getopt: use $(...) command substitution in example script [shellcheck] Sami Kerola
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 11+ messages in thread
From: Sami Kerola @ 2015-06-28 19:43 UTC (permalink / raw)
  To: util-linux; +Cc: Sami Kerola

The commit fixes following issue.

$ ./autogen.sh
[...]
./autogen.sh: line 119: cd: /home/src/util: No such file or directory

And makes build to fail early with an error easier to understand than the
one below.

$ make
[...]
./libtool: line 8988: cd: linux: No such file or directory
libtool: warning: cannot determine absolute directory name of 'linux'
/usr/bin/grep: linux/libuuid.la: No such file or directory
/usr/bin/sed: can't read linux/libuuid.la: No such file or directory
libtool:   error: 'linux/libuuid.la' is not a valid libtool archive

Reference: https://lists.gnu.org/archive/html/bug-libtool/2005-03/msg00132.html
Signed-off-by: Sami Kerola <kerolasa@iki.fi>
---
 autogen.sh   | 7 ++++++-
 configure.ac | 5 +++++
 2 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/autogen.sh b/autogen.sh
index 546d468..d64ff08 100755
--- a/autogen.sh
+++ b/autogen.sh
@@ -86,6 +86,11 @@ test ${ltver##2.} = "$ltver" && {
 	DIE=1
 }
 
+if test `echo $PWD | grep -c '\s'` != "0"; then
+	echo 'built directory cannot have whitespace in its name.'
+	DIE=1
+fi
+
 if test "$DIE" -eq 1; then
 	exit 1
 fi
@@ -116,7 +121,7 @@ autoheader $AH_OPTS
 
 automake --add-missing $AM_OPTS
 
-cd $THEDIR
+cd "$THEDIR"
 
 echo
 echo "Now type '$srcdir/configure' and 'make' to compile."
diff --git a/configure.ac b/configure.ac
index 58feb22..18bee8c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -142,6 +142,11 @@ m4_ifndef([PKG_PROG_PKG_CONFIG],
     ./autogen.sh or autoreconf again.])])
 PKG_PROG_PKG_CONFIG
 
+dnl libtool does not work if the path has a space in it.
+AS_IF([ test `echo $PWD | grep -c '\s'` != "0"  ], [
+  AC_MSG_ERROR([built directory cannot have whitespace in its name.])
+])
+
 GTK_DOC_CHECK([1.10])
 AC_PATH_PROG([XSLTPROC], [xsltproc])
 
-- 
2.4.4


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH 6/7] getopt: use $(...) command substitution in example script [shellcheck]
  2015-06-28 19:43 [PATCH 0/7] pull: various small changes Sami Kerola
                   ` (4 preceding siblings ...)
  2015-06-28 19:43 ` [PATCH 5/7] build-sys: add minimal whitespace build directory support Sami Kerola
@ 2015-06-28 19:43 ` Sami Kerola
  2015-06-28 19:43 ` [PATCH 7/7] reset: deprecate the script, and remove reset.033c Sami Kerola
  2015-06-29  9:49 ` [PATCH 0/7] pull: various small changes Karel Zak
  7 siblings, 0 replies; 11+ messages in thread
From: Sami Kerola @ 2015-06-28 19:43 UTC (permalink / raw)
  To: util-linux; +Cc: Sami Kerola

Reference: https://github.com/koalaman/shellcheck/wiki/SC2006
Signed-off-by: Sami Kerola <kerolasa@iki.fi>
---
 misc-utils/getopt-parse.bash | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/misc-utils/getopt-parse.bash b/misc-utils/getopt-parse.bash
index 29e7f6f..aab8c62 100644
--- a/misc-utils/getopt-parse.bash
+++ b/misc-utils/getopt-parse.bash
@@ -19,8 +19,8 @@
 # Note that we use `"$@"' to let each command-line parameter expand to a
 # separate word. The quotes around `$@' are essential!
 # We need TEMP as the `eval set --' would nuke the return value of getopt.
-TEMP=`getopt -o ab:c:: --long a-long,b-long:,c-long:: \
-     -n 'example.bash' -- "$@"`
+TEMP=$(getopt -o ab:c:: --long a-long,b-long:,c-long:: \
+     -n 'example.bash' -- "$@")
 
 if [ $? != 0 ] ; then echo "Terminating..." >&2 ; exit 1 ; fi
 
-- 
2.4.4


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH 7/7] reset: deprecate the script, and remove reset.033c
  2015-06-28 19:43 [PATCH 0/7] pull: various small changes Sami Kerola
                   ` (5 preceding siblings ...)
  2015-06-28 19:43 ` [PATCH 6/7] getopt: use $(...) command substitution in example script [shellcheck] Sami Kerola
@ 2015-06-28 19:43 ` Sami Kerola
  2015-06-29  9:49 ` [PATCH 0/7] pull: various small changes Karel Zak
  7 siblings, 0 replies; 11+ messages in thread
From: Sami Kerola @ 2015-06-28 19:43 UTC (permalink / raw)
  To: util-linux; +Cc: Sami Kerola

Most distributions probably ship reset from ncurses, which means
util-linux reset(1) is unlikely to be in use anywhere.  Assuming the
previous being true it is almost unimaginable anyone one would be using
the alternative script, so remove it and mark the script deprecated.

Signed-off-by: Sami Kerola <kerolasa@iki.fi>
---
 Documentation/deprecated.txt |  5 +++++
 term-utils/Makemodule.am     |  1 -
 term-utils/reset             |  6 ++++++
 term-utils/reset.033c        | 11 -----------
 4 files changed, 11 insertions(+), 12 deletions(-)
 delete mode 100755 term-utils/reset.033c

diff --git a/Documentation/deprecated.txt b/Documentation/deprecated.txt
index a32833f..e63675a 100644
--- a/Documentation/deprecated.txt
+++ b/Documentation/deprecated.txt
@@ -93,6 +93,11 @@ Why:	parallel port printers are probably almost extinct devices
 
 ----------------------------
 
+What:	reset
+Why:	ncurses has better reset(1)
+
+----------------------------
+
 The Single UNIX(TM) Specification, Version 2
 Copyright (C) 1997 The Open Group
 
diff --git a/term-utils/Makemodule.am b/term-utils/Makemodule.am
index 75cc922..e8c26d3 100644
--- a/term-utils/Makemodule.am
+++ b/term-utils/Makemodule.am
@@ -55,7 +55,6 @@ if BUILD_RESET
 dist_usrbin_exec_SCRIPTS += term-utils/reset
 dist_man_MANS += term-utils/reset.1
 endif
-EXTRA_DIST += term-utils/reset.033c
 
 
 if BUILD_MESG
diff --git a/term-utils/reset b/term-utils/reset
index 68de82e..43f83cb 100755
--- a/term-utils/reset
+++ b/term-utils/reset
@@ -1,4 +1,10 @@
 #!/bin/sh
+# This command is deprecated.  The utility is in maintenance mode,
+# meaning we keep them in source tree for backward compatibility
+# only.  Do not waste time making this command better, unless the
+# fix is about security or other very critical issue.
+#
+# See Documentation/deprecated.txt for more information.
 stty sane
 tput clear
 tput rmacs
diff --git a/term-utils/reset.033c b/term-utils/reset.033c
deleted file mode 100755
index fc7fad6..0000000
--- a/term-utils/reset.033c
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/bin/sh
-stty sane
-tput clear
-tput rmacs
-tput rmm
-tput rmso
-tput rmul
-tput rs1
-tput rs2
-tput rs3
-printf "\\033c\n"
-- 
2.4.4


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* Re: [PATCH 4/7] docs: unify mkswap(8) with swapon(8) about holes warning
       [not found]   ` <CADNa6_39RU7RQRpd0oG1KAVT2Yo0Z1fi6roy6cQXCeNkeFQG5A@mail.gmail.com>
@ 2015-06-29  8:09     ` Sami Kerola
  0 siblings, 0 replies; 11+ messages in thread
From: Sami Kerola @ 2015-06-29  8:09 UTC (permalink / raw)
  To: Dave Rutherford; +Cc: util-linux

On 29 June 2015 at 03:35, Dave Rutherford <dave@evilpettingzoo.com> wrote:
> On Sun, Jun 28, 2015 at 3:43 PM, Sami Kerola <kerolasa@iki.fi> wrote:
>>
>> +It is recommended to use
>> +.BR dd (1)
>> +and /dev/zero to in these cases.  Please read notes from
>
>
> You're missing a verb after `to' there.

Thanks for review Dave. I changed the wording to form: 'and /dev/zero
in these cases.' Updated version is in my remote repo.

https://github.com/kerolasa/lelux-utiliteetit/commit/5e3899b316392a5ff65d917ae47adb2053529309

> Thanks for your comments on my patch to wall. I certainly
> hope your suggestion for json was satire. I'm new to the list
> so not sure I have the right perception there yet.

Being able to parse[1] wall(1) message was earlier seen as something
possibly useful. Json would do that fairly well, but I admit json is
broken proposal - it feels wrong. Maybe wall(1) should copy the
message to /dev/log and whom ever is interested to know when exactly
messages were sent, what was said, and by whom, should read system
log. Obviously system log is not readable all distributions for all
users, so syslog is useful to a limit

[1] http://www.spinics.net/lists/util-linux-ng/msg09930.html

-- 
Sami Kerola
http://www.iki.fi/kerolasa/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 0/7] pull: various small changes
  2015-06-28 19:43 [PATCH 0/7] pull: various small changes Sami Kerola
                   ` (6 preceding siblings ...)
  2015-06-28 19:43 ` [PATCH 7/7] reset: deprecate the script, and remove reset.033c Sami Kerola
@ 2015-06-29  9:49 ` Karel Zak
  2015-06-29 10:14   ` Ruediger Meier
  7 siblings, 1 reply; 11+ messages in thread
From: Karel Zak @ 2015-06-29  9:49 UTC (permalink / raw)
  To: Sami Kerola; +Cc: util-linux

On Sun, Jun 28, 2015 at 08:43:18PM +0100, Sami Kerola wrote:
> But deprecations can be tricky, so it would be great to hear if I
> assumptions about reset(1) and the last-deprecated are right or wrong.

 The old last(1) implementation deprecation is expected and planned,
 so it's fine and I think it's also fine to add the reset script
 between deprecated stuff.

 Applied, thanks.

>   build-sys: add minimal whitespace build directory support

 I don't like this patch. I don't think it's good idea to add warning
 about libtools limitations to the all build systems. If we really need
 such warning than it has to be in the LT_INIT.

    Karel

-- 
 Karel Zak  <kzak@redhat.com>
 http://karelzak.blogspot.com

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 0/7] pull: various small changes
  2015-06-29  9:49 ` [PATCH 0/7] pull: various small changes Karel Zak
@ 2015-06-29 10:14   ` Ruediger Meier
  0 siblings, 0 replies; 11+ messages in thread
From: Ruediger Meier @ 2015-06-29 10:14 UTC (permalink / raw)
  To: Karel Zak; +Cc: Sami Kerola, util-linux

On Monday 29 June 2015, Karel Zak wrote:
> On Sun, Jun 28, 2015 at 08:43:18PM +0100, Sami Kerola wrote:
> > But deprecations can be tricky, so it would be great to hear if I
> > assumptions about reset(1) and the last-deprecated are right or
> > wrong.
>
>  The old last(1) implementation deprecation is expected and planned,
>  so it's fine and I think it's also fine to add the reset script
>  between deprecated stuff.
>
>  Applied, thanks.
>
> >   build-sys: add minimal whitespace build directory support
>
>  I don't like this patch. I don't think it's good idea to add warning
>  about libtools limitations to the all build systems. If we really
> need such warning than it has to be in the LT_INIT.

BTW even worse than whitespaces are colons within the path because the 
build may work but then no *PATH, LD_LIBRARY_PATH", etc. will work. IMO 
they should already warn in mkdir(1) about such stupid directory 
names ;)

cu,
Rudi

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2015-06-29 10:14 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-06-28 19:43 [PATCH 0/7] pull: various small changes Sami Kerola
2015-06-28 19:43 ` [PATCH 1/7] last-deprecated: remove from source tree Sami Kerola
2015-06-28 19:43 ` [PATCH 2/7] zramctl: add link to kernel documentation Sami Kerola
2015-06-28 19:43 ` [PATCH 3/7] cal: fix memory leaks [valgrind] Sami Kerola
2015-06-28 19:43 ` [PATCH 4/7] docs: unify mkswap(8) with swapon(8) about holes warning Sami Kerola
     [not found]   ` <CADNa6_39RU7RQRpd0oG1KAVT2Yo0Z1fi6roy6cQXCeNkeFQG5A@mail.gmail.com>
2015-06-29  8:09     ` Sami Kerola
2015-06-28 19:43 ` [PATCH 5/7] build-sys: add minimal whitespace build directory support Sami Kerola
2015-06-28 19:43 ` [PATCH 6/7] getopt: use $(...) command substitution in example script [shellcheck] Sami Kerola
2015-06-28 19:43 ` [PATCH 7/7] reset: deprecate the script, and remove reset.033c Sami Kerola
2015-06-29  9:49 ` [PATCH 0/7] pull: various small changes Karel Zak
2015-06-29 10:14   ` Ruediger Meier

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.