Karel Zak [Thu, 1 Jun 2017 10:30:14 +0000 (12:30 +0200)]
Merge branch 'travis-test' of https://github.com/rudimeier/util-linux
* 'travis-test' of https://github.com/rudimeier/util-linux:
tests: check for timeout command
Revert "tests: use stdbuf when stderr and stdout is randomly ordered"
Karel Zak [Thu, 1 Jun 2017 08:49:12 +0000 (10:49 +0200)]
Merge branch 'travis-test' of https://github.com/rudimeier/util-linux
* 'travis-test' of https://github.com/rudimeier/util-linux:
misc: fix some warnings
tests: handle non glibc error message for fallocate
tests: use stdbuf when stderr and stdout is randomly ordered
build-sys: fix library order when linking
tests: avoid diff of diffs
tests: grep's short option -A is more portable
Ruediger Meier [Wed, 31 May 2017 21:58:11 +0000 (23:58 +0200)]
misc: fix some warnings
sys-utils/prlimit.c: In function 'do_prlimit':
sys-utils/prlimit.c:367:16: warning: format '%ju' expects argument of type 'uintmax_t', but argument 2 has type 'rlim_t {aka long long unsigned int}' [-Wformat=]
printf("<%ju", new->rlim_cur);
lib/plymouth-ctrl.c: In function 'open_un_socket_and_connect':
lib/plymouth-ctrl.c:88:20: warning: passing argument 2 of 'connect' from incompatible pointer type [-Wincompatible-pointer-types]
ret = connect(fd, &su, offsetof(struct sockaddr_un, sun_path) + 1 + strlen(su.sun_path+1));
^
In file included from lib/plymouth-ctrl.c:35:0:
/usr/include/sys/socket.h:314:5: note: expected 'const struct sockaddr *' but argument is of type 'struct sockaddr_un *'
int connect (int, const struct sockaddr *, socklen_t);
login-utils/last.c: In function 'list':
login-utils/last.c:506:54: warning: pointer targets in passing argument 4 of 'dns_lookup' differ in signedness [-Wpointer-sign]
r = dns_lookup(domain, sizeof(domain), ctl->useip, p->ut_addr_v6);
^
login-utils/last.c:291:12: note: expected 'int32_t * {aka int *}' but argument is of type 'unsigned int *'
static int dns_lookup(char *result, int size, int useip, int32_t *a)
^~~~~~~~~~
In file included from sys-utils/hwclock-cmos.c:92:0:
sys-utils/hwclock.h:67:32: warning: 'struct timeval' declared inside parameter list will not be visible outside of this definition or declaration
extern double time_diff(struct timeval subtrahend, struct timeval subtractor);
misc-utils/test_uuidd.c: In function 'create_nthreads':
misc-utils/test_uuidd.c:187:19: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
proc->pid, (int) th->tid, th->index));
Ruediger Meier [Wed, 31 May 2017 19:02:12 +0000 (21:02 +0200)]
build-sys: fix library order when linking
We got some errors on Alpine Linux where $LTLIBINTL is non-empty:
./.libs/libcommon.a(libcommon_la-blkdev.o): In function `open_blkdev_or_file':
lib/blkdev.c:282: undefined reference to `libintl_gettext
collect2: error: ld returned 1 exit status
This patch does not change any wording or grammar. It
only shuffles the order of things and adds a table of
contents. For example: it moves coding related bullet
points into the Coding Style Chapter; it groups email
related Chapters together, and so fourth.
Signed-off-by: J William Piggott <elseifthen@gmx.com>
Karel Zak [Wed, 31 May 2017 08:52:44 +0000 (10:52 +0200)]
build-sys: prefer ncurses-config rather than pkg-config
If you have installed:
ii libncurses5:i386 5.9+20140913-1+b1 i386 shared libraries for terminal handling
ii libncurses5-dev:i386 5.9+20140913-1+b1 i386 developer's libraries for ncurses
ii libncursesw5:i386 5.9+20140913-1+b1 i386 shared libraries for terminal handling (wide character support)
then pkg-config blindly follows ncursesw although there are not header
files for this library. It seems better to use pkg-config as fallback
solution only.
Karel Zak [Tue, 30 May 2017 15:10:40 +0000 (17:10 +0200)]
cal: ncurses cleanup
* use proper paths to term.h
* keep ncurses support optional
* link with TINFO_LIBS (-ltinfo), or fallback to NCURSES_LIBS (-ltinfo -lncurses)
* don't include unnecessary ncurses.h (term.h is enough)
Karel Zak [Tue, 30 May 2017 15:10:40 +0000 (17:10 +0200)]
lib/colors: ncurses cleanup
* use proper paths to term.h
* keep ncurses support optional
* link with TINFO_LIBS (-ltinfo), or fallback to NCURSES_LIBS (-ltinfo -lncurses)
* don't include unnecessary ncurses.h (term.h is enough)
Karel Zak [Tue, 30 May 2017 15:01:00 +0000 (17:01 +0200)]
build-sys: make ncurses detection more robust
It seems Debina 8 is a little bit incompatible with us:
* ncurses-config is packaged in ncurses-bin where is *no* any
development files! It means the script returns paths to not installed
files (IMHO packaging bug)
Fixed, we need to check for header files too.
* term.h is "everywhere" on Fedora:
<term.h>
<ncurses/term.h>
<ncursesw/term.h>
Debian is more strict and uses <ncurses[w]/term.h> only.
Fixed, we need #ifdef storm to use the correct path
* libtinfo-dev does not contains any header files
Fixed, we have to always require installed ncurses devel stuff to compile,
but we can link with -ltinfo only (cal, ul, more, ...)
Sami Kerola [Sat, 27 May 2017 09:03:55 +0000 (10:03 +0100)]
libfdisk: fix variable shadowing
libfdisk/src/context.c: In function 'fdisk_assign_device':
libfdisk/src/context.c:549:7: warning: declaration of 'rc' shadows a previous local [-Wshadow]
libfdisk/src/context.c:542:10: note: shadowed declaration is here
[kzak@redhat.com: - add rc to debug message]
Signed-off-by: Sami Kerola <kerolasa@iki.fi> Signed-off-by: Karel Zak <kzak@redhat.com>
Sami Kerola [Thu, 18 May 2017 21:19:34 +0000 (22:19 +0100)]
rename: make --no-act to imply --verbose
It is reasonable to assume use of --no-act means one wants to always see
what would have happen if rename is done. To say same slightly differently,
if there is sn use case for silent rename --no-act run I cannot think one.
Pali Rohár [Wed, 17 May 2017 18:36:40 +0000 (20:36 +0200)]
libblkid: udf: Change algorithm for reporting UUID
Ensure that reported UUID always contains only lowercase hexadecimal digits
and is always 16 characters length, padded with zero digits.
Volume Set Identifier is converted to UTF-8 before generating UUID from it.
As it could potentially contain any Unicode character. So correctly handle
both 8bit and 16bit OSTA Compressed Unicode encodings.
Disks which have only lowercase hexadecimal digits in Volume Set Identifier
would have same UUID as before this patch.
Pali Rohár [Tue, 16 May 2017 21:52:05 +0000 (23:52 +0200)]
libblkid: udf: Correctly handle UDF strings encoded in 8bit OSTA Compressed Unicode
String encoded in 8bit OSTA Compressed Unicode contains one Unicode
codepoint per 8bits. Maximal Unicode codepoint is U+FF. Which effectively
means that it is equivalent to Latin1 encoding.
Before this patch libblkid copied raw 8bit OSTA Compressed Unicode from
disk and treated it as UTF-8. It worked fine just for UTF-8 invariants,
other characters were incorrectly encoded. This patch fixes this problem.
Note that processing UUID is not fixed in this patch.