From 12a9c874804dc2970c44b223ec1059bd57900169 Mon Sep 17 00:00:00 2001 From: Christopher Faylor Date: Fri, 15 Jun 2001 04:50:57 +0000 Subject: [PATCH] * mkpasswd.c (main): Output passwd file in binary mode so that there are no CRs in the file. * umount.cc (remove_all_user_mounts): Don't try to remove /cygdrive mounts. --- winsup/utils/ChangeLog | 7 +++++++ winsup/utils/mkpasswd.c | 2 ++ winsup/utils/umount.cc | 6 ++++-- 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/winsup/utils/ChangeLog b/winsup/utils/ChangeLog index 790c7c4e5..e7c95add5 100644 --- a/winsup/utils/ChangeLog +++ b/winsup/utils/ChangeLog @@ -1,3 +1,10 @@ +Fri Jun 15 00:49:21 2001 Christopher Faylor + + * mkpasswd.c (main): Output passwd file in binary mode so that there + are no CRs in the file. + * umount.cc (remove_all_user_mounts): Don't try to remove /cygdrive + mounts. + Tue May 1 10:50:48 2001 Christopher Faylor * mkpasswd.c (enum_users): Use /bin/bash as the default shell. diff --git a/winsup/utils/mkpasswd.c b/winsup/utils/mkpasswd.c index 1d8db88ca..1a4969801 100644 --- a/winsup/utils/mkpasswd.c +++ b/winsup/utils/mkpasswd.c @@ -17,6 +17,7 @@ #include #include #include +#include SID_IDENTIFIER_AUTHORITY sid_world_auth = {SECURITY_WORLD_SID_AUTHORITY}; SID_IDENTIFIER_AUTHORITY sid_nt_auth = {SECURITY_NT_AUTHORITY}; @@ -369,6 +370,7 @@ main (int argc, char **argv) SID_NAME_USE use; passed_home_path[0] = '\0'; + setmode (1, O_BINARY); if (GetVersion () < 0x80000000) if (argc == 1) diff --git a/winsup/utils/umount.cc b/winsup/utils/umount.cc index 3adb8511e..c19b78cdc 100644 --- a/winsup/utils/umount.cc +++ b/winsup/utils/umount.cc @@ -159,7 +159,8 @@ remove_all_user_mounts () while ((p = getmntent (m)) != NULL) { /* Remove the mount if it's a user mount. */ - if (strncmp (p->mnt_type, "user", 4) == 0) + if (strncmp (p->mnt_type, "user", 4) == 0 && + strstr (p->mnt_opts, "noumount") == NULL) { if (cygwin_umount (p->mnt_dir, 0)) error (p->mnt_dir); @@ -183,7 +184,8 @@ remove_all_system_mounts () while ((p = getmntent (m)) != NULL) { /* Remove the mount if it's a system mount. */ - if (strncmp (p->mnt_type, "system", 6) == 0) + if (strncmp (p->mnt_type, "system", 6) == 0 && + strstr (p->mnt_opts, "noumount") == NULL) { if (cygwin_umount (p->mnt_dir, MOUNT_SYSTEM)) error (p->mnt_dir);