336 lines
12 KiB
Diff
336 lines
12 KiB
Diff
--- systemd-pam-185/src/fsck/fsck.c.orig 2012-06-22 23:22:22.000000000 -0400
|
|
+++ systemd-pam-185/src/fsck/fsck.c 2012-06-22 21:15:56.000000000 -0400
|
|
@@ -36,6 +36,8 @@
|
|
#include "bus-errors.h"
|
|
#include "virt.h"
|
|
|
|
+#include "config.h"
|
|
+
|
|
static bool arg_skip = false;
|
|
static bool arg_force = false;
|
|
static bool arg_show_progress = false;
|
|
@@ -193,9 +195,16 @@
|
|
char *device;
|
|
double p;
|
|
usec_t t;
|
|
-
|
|
+#ifdef HAVE_MSFORMAT
|
|
if (fscanf(f, "%i %lu %lu %ms", &pass, &cur, &max, &device) != 4)
|
|
- break;
|
|
+#else
|
|
+ device = malloc(257);
|
|
+ if (fscanf(f, "%i %lu %lu %256s", &pass, &cur, &max, device) != 4) {
|
|
+ free(device);
|
|
+ }
|
|
+
|
|
+#endif /* HAVE_MSFORMAT */
|
|
+ break;
|
|
|
|
/* Only show one progress counter at max */
|
|
if (!locked) {
|
|
--- systemd-pam-185/src/core/swap.c.orig 2012-06-22 23:22:55.000000000 -0400
|
|
+++ systemd-pam-185/src/core/swap.c 2012-06-22 21:17:10.000000000 -0400
|
|
@@ -40,6 +40,8 @@
|
|
#include "def.h"
|
|
#include "path-util.h"
|
|
|
|
+#include "config.h"
|
|
+
|
|
static const UnitActiveState state_translation_table[_SWAP_STATE_MAX] = {
|
|
[SWAP_DEAD] = UNIT_INACTIVE,
|
|
[SWAP_ACTIVATING] = UNIT_ACTIVATING,
|
|
@@ -1038,7 +1040,7 @@
|
|
for (i = 1;; i++) {
|
|
char *dev = NULL, *d;
|
|
int prio = 0, k;
|
|
-
|
|
+#ifdef HAVE_MSFORMAT
|
|
if ((k = fscanf(m->proc_swaps,
|
|
"%ms " /* device/file */
|
|
"%*s " /* type of swap */
|
|
@@ -1046,10 +1048,18 @@
|
|
"%*s " /* used */
|
|
"%i\n", /* priority */
|
|
&dev, &prio)) != 2) {
|
|
-
|
|
+#else
|
|
+ dev = malloc(257);
|
|
+ if ((k = fscanf(m->proc_swaps,
|
|
+ "%256s " /* device/file */
|
|
+ "%*s " /* type of swap */
|
|
+ "%*s " /* swap size */
|
|
+ "%*s " /* used */
|
|
+ "%i\n", /* priority */
|
|
+ dev, &prio)) != 2) {
|
|
+#endif /* HAVE_MSFORMAT */
|
|
if (k == EOF)
|
|
break;
|
|
-
|
|
log_warning("Failed to parse /proc/swaps:%u.", i);
|
|
free(dev);
|
|
continue;
|
|
--- systemd-pam-185/src/core/mount-setup.c.orig 2012-06-22 23:23:41.000000000 -0400
|
|
+++ systemd-pam-185/src/core/mount-setup.c 2012-06-22 21:19:44.000000000 -0400
|
|
@@ -28,6 +28,7 @@
|
|
#include <assert.h>
|
|
#include <unistd.h>
|
|
#include <ftw.h>
|
|
+#include <linux/fs.h>
|
|
|
|
#include "mount-setup.h"
|
|
#include "dev-setup.h"
|
|
@@ -41,6 +41,8 @@
|
|
#include "path-util.h"
|
|
#include "missing.h"
|
|
|
|
+#include "config.h"
|
|
+
|
|
#ifndef TTY_GID
|
|
#define TTY_GID 5
|
|
#endif
|
|
@@ -200,9 +202,12 @@
|
|
for (;;) {
|
|
char *controller;
|
|
int enabled = 0;
|
|
-
|
|
+#ifdef HAVE_MSFORMAT
|
|
if (fscanf(f, "%ms %*i %*i %i", &controller, &enabled) != 2) {
|
|
-
|
|
+#else
|
|
+ controller = malloc(257);
|
|
+ if (fscanf(f, "%256s %*i %*i %i", controller, &enabled) != 2) {
|
|
+#endif /* HAVE_MSFORMAT */
|
|
if (feof(f))
|
|
break;
|
|
|
|
--- systemd-pam-185/src/core/mount.c.orig 2012-06-22 23:24:17.000000000 -0400
|
|
+++ systemd-pam-185/src/core/mount.c 2012-06-22 22:51:21.000000000 -0400
|
|
@@ -41,6 +41,8 @@
|
|
#include "exit-status.h"
|
|
#include "def.h"
|
|
|
|
+#include "config.h"
|
|
+
|
|
static const UnitActiveState state_translation_table[_MOUNT_STATE_MAX] = {
|
|
[MOUNT_DEAD] = UNIT_INACTIVE,
|
|
[MOUNT_MOUNTING] = UNIT_ACTIVATING,
|
|
@@ -1514,7 +1516,7 @@
|
|
int k;
|
|
|
|
device = path = options = options2 = fstype = d = p = o = NULL;
|
|
-
|
|
+#ifdef HAVE_MSFORMAT
|
|
if ((k = fscanf(m->proc_self_mountinfo,
|
|
"%*s " /* (1) mount id */
|
|
"%*s " /* (2) parent id */
|
|
@@ -1533,7 +1535,31 @@
|
|
&fstype,
|
|
&device,
|
|
&options2)) != 5) {
|
|
-
|
|
+#else
|
|
+ path = malloc(257);
|
|
+ options = malloc(257);
|
|
+ fstype = malloc(257);
|
|
+ device = malloc(257);
|
|
+ options2 = malloc(257);
|
|
+ if ((k = fscanf(m->proc_self_mountinfo,
|
|
+ "%*s " /* (1) mount id */
|
|
+ "%*s " /* (2) parent id */
|
|
+ "%*s " /* (3) major:minor */
|
|
+ "%*s " /* (4) root */
|
|
+ "%256s " /* (5) mount point */
|
|
+ "%256s" /* (6) mount options */
|
|
+ "%*[^-]" /* (7) optional fields */
|
|
+ "- " /* (8) separator */
|
|
+ "%256s " /* (9) file system type */
|
|
+ "%256s" /* (10) mount source */
|
|
+ "%256s" /* (11) mount options 2 */
|
|
+ "%*[^\n]", /* some rubbish at the end */
|
|
+ path,
|
|
+ options,
|
|
+ fstype,
|
|
+ device,
|
|
+ options2)) != 5) {
|
|
+#endif /* HAVE_MSFORMAT */
|
|
if (k == EOF)
|
|
break;
|
|
|
|
--- systemd-pam-185/src/core/umount.c.orig 2012-06-22 23:24:37.000000000 -0400
|
|
+++ systemd-pam-185/src/core/umount.c 2012-06-22 22:56:15.000000000 -0400
|
|
@@ -35,6 +35,8 @@
|
|
#include "path-util.h"
|
|
#include "util.h"
|
|
|
|
+#include "config.h"
|
|
+
|
|
typedef struct MountPoint {
|
|
char *path;
|
|
dev_t devnum;
|
|
@@ -74,7 +76,7 @@
|
|
MountPoint *m;
|
|
|
|
path = p = NULL;
|
|
-
|
|
+#ifdef HAVE_MSFORMAT
|
|
if ((k = fscanf(proc_self_mountinfo,
|
|
"%*s " /* (1) mount id */
|
|
"%*s " /* (2) parent id */
|
|
@@ -89,6 +91,23 @@
|
|
"%*s" /* (11) mount options 2 */
|
|
"%*[^\n]", /* some rubbish at the end */
|
|
&path)) != 1) {
|
|
+#else
|
|
+ path = malloc(257);
|
|
+ if ((k = fscanf(proc_self_mountinfo,
|
|
+ "%*s " /* (1) mount id */
|
|
+ "%*s " /* (2) parent id */
|
|
+ "%*s " /* (3) major:minor */
|
|
+ "%*s " /* (4) root */
|
|
+ "%256s " /* (5) mount point */
|
|
+ "%*s" /* (6) mount options */
|
|
+ "%*[^-]" /* (7) optional fields */
|
|
+ "- " /* (8) separator */
|
|
+ "%*s " /* (9) file system type */
|
|
+ "%*s" /* (10) mount source */
|
|
+ "%*s" /* (11) mount options 2 */
|
|
+ "%*[^\n]", /* some rubbish at the end */
|
|
+ path)) != 1) {
|
|
+#endif /* HAVE_MSFORMAT */
|
|
if (k == EOF)
|
|
break;
|
|
|
|
@@ -150,7 +169,7 @@
|
|
MountPoint *swap;
|
|
char *dev = NULL, *d;
|
|
int k;
|
|
-
|
|
+#ifdef HAVE_MSFORMAT
|
|
if ((k = fscanf(proc_swaps,
|
|
"%ms " /* device/file */
|
|
"%*s " /* type of swap */
|
|
@@ -158,7 +177,16 @@
|
|
"%*s " /* used */
|
|
"%*s\n", /* priority */
|
|
&dev)) != 1) {
|
|
-
|
|
+#else
|
|
+ dev = malloc(257);
|
|
+ if ((k = fscanf(proc_swaps,
|
|
+ "%256s " /* device/file */
|
|
+ "%*s " /* type of swap */
|
|
+ "%*s " /* swap size */
|
|
+ "%*s " /* used */
|
|
+ "%*s\n", /* priority */
|
|
+ dev)) != 1) {
|
|
+#endif /* HAVE_MSFORMAT */
|
|
if (k == EOF)
|
|
break;
|
|
|
|
--- systemd-pam-185/src/shared/socket-util.c.orig 2012-06-22 23:25:00.000000000 -0400
|
|
+++ systemd-pam-185/src/shared/socket-util.c 2012-06-22 22:59:27.000000000 -0400
|
|
@@ -39,6 +39,8 @@
|
|
#include "socket-util.h"
|
|
#include "missing.h"
|
|
|
|
+#include "config.h"
|
|
+
|
|
int socket_address_parse(SocketAddress *a, const char *s) {
|
|
int r;
|
|
char *e, *n;
|
|
@@ -201,8 +203,16 @@
|
|
a->type = SOCK_RAW;
|
|
|
|
errno = 0;
|
|
- if (sscanf(s, "%ms %u", &sfamily, &group) < 1)
|
|
+#ifdef HAVE_MSFORMAT
|
|
+ if (sscanf(s, "%ms %u", &sfamily, &group) < 1)
|
|
+ return errno ? -errno : -EINVAL;
|
|
+#else
|
|
+ sfamily = malloc(257);
|
|
+ if (sscanf(s, "%256s %u", sfamily, &group) < 1) {
|
|
+ free(sfamily);
|
|
return errno ? -errno : -EINVAL;
|
|
+ }
|
|
+#endif /* HAVE_MSFORMAT */
|
|
|
|
if ((family = netlink_family_from_string(sfamily)) < 0)
|
|
if (safe_atoi(sfamily, &family) < 0) {
|
|
--- systemd-pam-185/src/tmpfiles/tmpfiles.c.orig 2012-06-22 23:25:21.000000000 -0400
|
|
+++ systemd-pam-185/src/tmpfiles/tmpfiles.c 2012-06-22 23:13:49.000000000 -0400
|
|
@@ -48,6 +48,8 @@
|
|
#include "set.h"
|
|
#include "conf-files.h"
|
|
|
|
+#include "config.h"
|
|
+
|
|
/* This reads all files listed in /etc/tmpfiles.d/?*.conf and creates
|
|
* them in the file system. This is intended to be used to create
|
|
* properly owned directories beneath /tmp, /var/tmp, /run, which are
|
|
@@ -970,7 +972,7 @@
|
|
i = new0(Item, 1);
|
|
if (!i)
|
|
return log_oom();
|
|
-
|
|
+#ifdef HAVE_MSFORMAT
|
|
if (sscanf(buffer,
|
|
"%c "
|
|
"%ms "
|
|
@@ -986,6 +988,28 @@
|
|
&group,
|
|
&age,
|
|
&n) < 2) {
|
|
+#else
|
|
+ i->path = malloc(257);
|
|
+ mode = malloc(257);
|
|
+ user = malloc(257);
|
|
+ group = malloc(257);
|
|
+ age = malloc(257);
|
|
+ if (sscanf(buffer,
|
|
+ "%c "
|
|
+ "%256s "
|
|
+ "%256s "
|
|
+ "%256s "
|
|
+ "%256s "
|
|
+ "%256s "
|
|
+ "%n",
|
|
+ &type,
|
|
+ i->path,
|
|
+ mode,
|
|
+ user,
|
|
+ group,
|
|
+ age,
|
|
+ &n) < 2) {
|
|
+#endif /* HAVE_MSFORMAT */
|
|
log_error("[%s:%u] Syntax error.", fname, line);
|
|
r = -EIO;
|
|
goto finish;
|
|
--- systemd-pam-185/src/cryptsetup/cryptsetup-generator.c.orig 2012-06-22 23:25:47.000000000 -0400
|
|
+++ systemd-pam-185/src/cryptsetup/cryptsetup-generator.c 2012-06-22 23:16:35.000000000 -0400
|
|
@@ -30,6 +30,8 @@
|
|
#include "virt.h"
|
|
#include "strv.h"
|
|
|
|
+#include "config.h"
|
|
+
|
|
static const char *arg_dest = "/tmp";
|
|
static bool arg_enabled = true;
|
|
static bool arg_read_crypttab = true;
|
|
@@ -421,8 +423,15 @@
|
|
l = strstrip(line);
|
|
if (*l == '#' || *l == 0)
|
|
continue;
|
|
-
|
|
+#ifdef HAVE_MSFORMAT
|
|
k = sscanf(l, "%ms %ms %ms %ms", &name, &device, &password, &options);
|
|
+#else
|
|
+ name = malloc(257);
|
|
+ device = malloc(257);
|
|
+ password = malloc(257);
|
|
+ options = malloc(257);
|
|
+ k = sscanf(l, "%256s %256s %256s %256s", name, device, password, options);
|
|
+#endif /* HAVE_MSFORMAT */
|
|
if (k < 2 || k > 4) {
|
|
log_error("Failed to parse /etc/crypttab:%u, ignoring.", n);
|
|
r = EXIT_FAILURE;
|