diff -Nru mountall-2.38/debian/changelog mountall-2.38ubuntu1/debian/changelog --- mountall-2.38/debian/changelog 2012-06-30 14:45:00.000000000 -0400 +++ mountall-2.38ubuntu1/debian/changelog 2012-07-28 17:56:26.000000000 -0400 @@ -1,3 +1,10 @@ +mountall (2.38ubuntu1) precise; urgency=low + + * Apply Patch from Damien Churchill to prevent tail + stripping for CephFS mounts. + + -- Matthew Roy Sat, 28 Jul 2012 17:54:44 -0400 + mountall (2.38) unstable; urgency=low * Counterproductively document in debian/copyright the license of files in diff -Nru mountall-2.38/src/mountall.c mountall-2.38ubuntu1/src/mountall.c --- mountall-2.38/src/mountall.c 2012-06-26 17:36:58.000000000 -0400 +++ mountall-2.38ubuntu1/src/mountall.c 2012-07-28 17:52:28.000000000 -0400 @@ -522,8 +522,15 @@ const char *type, const char *opts) { + int devlen; nih_assert (mnt != NULL); + if (type) { + if (mnt->type) + nih_unref (mnt->type, mounts); + mnt->type = NIH_MUST (nih_strdup (mounts, type)); + } + if (device) { if (mnt->device) nih_unref (mnt->device, mounts); @@ -533,6 +540,12 @@ dequote (mnt->device + 5); } else if (! strncmp (mnt->device, "LABEL=", 6)) { dequote (mnt->device + 6); + } else if (! strncmp (mnt->type, "ceph", 4)) { + dequote (mnt->device); + devlen = strlen(mnt->device); + if ( devlen < 2 || strcmp(mnt->device + (devlen - 2), ":/")) { + strip_slashes (mnt->device); + } } else { dequote (mnt->device); strip_slashes (mnt->device); @@ -542,12 +555,6 @@ if (check >= 0) mnt->check = check; - if (type) { - if (mnt->type) - nih_unref (mnt->type, mounts); - mnt->type = NIH_MUST (nih_strdup (mounts, type)); - } - if (opts) { if (mnt->opts) nih_unref (mnt->opts, mounts);