7e99044638
It turns out that mount.cifs is run in a shell environment that doesn't have $PATH. To find that program, we must commit to some location. The path I used will work fine on NixOS, but of course it won't work on other Linux distributions. I'm not sure whether that's an important issue or not.
23 lines
803 B
Diff
23 lines
803 B
Diff
diff -ubr cifs-utils-5.9-orig/mount.cifs.c cifs-utils-5.9/mount.cifs.c
|
|
--- cifs-utils-5.9-orig/mount.cifs.c 2013-03-05 10:53:19.375464790 +0100
|
|
+++ cifs-utils-5.9/mount.cifs.c 2013-03-05 11:41:40.704946110 +0100
|
|
@@ -1634,7 +1634,7 @@
|
|
}
|
|
|
|
/*
|
|
- * If systemd is running and /bin/systemd-ask-password --
|
|
+ * If systemd is running and systemd-ask-password --
|
|
* is available, then use that else fallback on getpass(..)
|
|
*
|
|
* Returns: @input or NULL on error
|
|
@@ -1657,7 +1657,7 @@
|
|
FILE *ask_pass_fp = NULL;
|
|
|
|
cmd = ret = NULL;
|
|
- if (asprintf(&cmd, "/bin/systemd-ask-password \"%s\"", prompt) >= 0) {
|
|
+ if (asprintf(&cmd, "/run/current-system/sw/bin/systemd-ask-password \"%s\"", prompt) >= 0) {
|
|
ask_pass_fp = popen (cmd, "re");
|
|
free (cmd);
|
|
}
|
|
Only in cifs-utils-5.9/: mount.cifs.c.orig
|