* [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
[parent not found: <CADNa6_39RU7RQRpd0oG1KAVT2Yo0Z1fi6roy6cQXCeNkeFQG5A@mail.gmail.com>]
* 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
* [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 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 a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox