1 diff -urN device-mapper.1.02.05.org/configure.in device-mapper.1.02.05/configure.in
2 --- device-mapper.1.02.05.org/configure.in 2006-04-19 18:38:56.000000000 +0200
3 +++ device-mapper.1.02.05/configure.in 2006-04-22 20:55:32.442643250 +0200
8 -AC_CHECK_HEADERS(ctype.h dirent.h errno.h fcntl.h getopt.h inttypes.h limits.h stdarg.h stdio.h stdlib.h string.h sys/ioctl.h sys/param.h sys/stat.h sys/types.h unistd.h,,AC_MSG_ERROR(bailing out))
9 +AC_CHECK_HEADERS(ctype.h dirent.h errno.h fcntl.h inttypes.h limits.h stdarg.h stdio.h stdlib.h string.h sys/ioctl.h sys/param.h sys/stat.h sys/types.h unistd.h,,AC_MSG_ERROR(bailing out))
11 AC_CHECK_HEADERS(termios.h)
12 ################################################################################
13 --- device-mapper.1.02.09/dmsetup/dmsetup.c.orig 2006-08-10 22:53:21.000000000 +0200
14 +++ device-mapper.1.02.09/dmsetup/dmsetup.c 2006-08-22 22:47:12.862554000 +0200
22 #include <sys/param.h>
23 @@ -1547,9 +1546,11 @@
26 /* Symbol set default */
28 if (!strcmp(nl_langinfo(CODESET), "UTF-8"))
36 memset(&_values, 0, sizeof(_values));
38 namebase = strdup((*argv)[0]);
39 - base = basename(namebase);
40 + base = strrchr(namebase,'/');
41 + if (base != NULL) *base++ = 0;
42 + else base = namebase;
44 if (!strcmp(base, "devmap_name")) {
51 (void) setlocale(LC_ALL, "");
54 if (!_process_switches(&argc, &argv)) {
55 fprintf(stderr, "Couldn't process command line.\n");
56 diff -urN device-mapper.1.02.05.org/lib/ioctl/libdm-iface.c device-mapper.1.02.05/lib/ioctl/libdm-iface.c
57 --- device-mapper.1.02.05.org/lib/ioctl/libdm-iface.c 2006-04-03 17:56:02.000000000 +0200
58 +++ device-mapper.1.02.05/lib/ioctl/libdm-iface.c 2006-04-22 20:55:32.442643250 +0200
64 + char nm[256], buf[300];
69 if (!(fl = fopen(file, "r"))) {
70 log_error("%s: fopen failed: %s", file, strerror(errno));
75 - if (fscanf(fl, "%d %255s\n", &num, &nm[0]) == 2) {
76 + /* Use fread+sscanf for klibc compatibility. */
80 + num = fread(&buf[size], sizeof(char), 1, fl);
83 + } while (num > 0 && buf[size - 1] != '\n');
85 + if (sscanf(buf, "%d %255s\n", &num, &nm[0]) == 2) {
86 if (!strcmp(name, nm)) {
91 dm_bit_set(_dm_bitset, num);
95 - } while (c != EOF && c != '\n');
102 diff -urN device-mapper.1.02.05.org/lib/libdm-file.c device-mapper.1.02.05/lib/libdm-file.c
103 --- device-mapper.1.02.05.org/lib/libdm-file.c 2006-01-31 15:50:37.000000000 +0100
104 +++ device-mapper.1.02.05/lib/libdm-file.c 2006-04-22 20:55:32.446643500 +0200
107 #include "libdm-file.h"
109 -#include <sys/file.h>
114 +# include <sys/file.h>
116 +# include <malloc.h>
120 static int _create_dir_recursive(const char *dir)