summaryrefslogtreecommitdiff
path: root/gdb/remote-fileio.c
diff options
context:
space:
mode:
authorMark Mitchell <mark@codesourcery.com>2005-03-16 15:58:41 +0000
committerMark Mitchell <mark@codesourcery.com>2005-03-16 15:58:41 +0000
commitb75101b7f6a277c2370fd3fc73f5658002d07057 (patch)
treedc6a73e50395fbdb69ef0cd9c746ee45eab34471 /gdb/remote-fileio.c
parent6c8b007f835c3da09f7d5909a13dee2297d0a8a6 (diff)
downloadgdb-b75101b7f6a277c2370fd3fc73f5658002d07057.tar.gz
* utils.c (internal_vproblem): Guard call to fork with
HAVE_WORKING_FORK. * cli/cli-cmds.c (shell_escape): Guard call to vfork with HAVE_WORKING_VFORK and HAVE_WORKING_FORK. * remote-fileo.c (remote_fileio_mode_to_host): Accomodate lack of S_IRGRP and related macros. (remote_fileio_mode_to_target): Likewise.
Diffstat (limited to 'gdb/remote-fileio.c')
-rw-r--r--gdb/remote-fileio.c22
1 files changed, 21 insertions, 1 deletions
diff --git a/gdb/remote-fileio.c b/gdb/remote-fileio.c
index d2090e602a4..7d8744dff33 100644
--- a/gdb/remote-fileio.c
+++ b/gdb/remote-fileio.c
@@ -1,6 +1,6 @@
/* Remote File-I/O communications
- Copyright 2003 Free Software Foundation, Inc.
+ Copyright 2003, 2005 Free Software Foundation, Inc.
This file is part of GDB.
@@ -162,18 +162,28 @@ remote_fileio_mode_to_host (long mode, int open_call)
hmode |= S_IWUSR;
if (mode & FILEIO_S_IXUSR)
hmode |= S_IXUSR;
+#ifdef S_IRGRP
if (mode & FILEIO_S_IRGRP)
hmode |= S_IRGRP;
+#endif
+#ifdef S_IWGRP
if (mode & FILEIO_S_IWGRP)
hmode |= S_IWGRP;
+#endif
+#ifdef S_IXGRP
if (mode & FILEIO_S_IXGRP)
hmode |= S_IXGRP;
+#endif
if (mode & FILEIO_S_IROTH)
hmode |= S_IROTH;
+#ifdef S_IWOTH
if (mode & FILEIO_S_IWOTH)
hmode |= S_IWOTH;
+#endif
+#ifdef S_IXOTH
if (mode & FILEIO_S_IXOTH)
hmode |= S_IXOTH;
+#endif
return hmode;
}
@@ -194,18 +204,28 @@ remote_fileio_mode_to_target (mode_t mode)
tmode |= FILEIO_S_IWUSR;
if (mode & S_IXUSR)
tmode |= FILEIO_S_IXUSR;
+#ifdef S_IRGRP
if (mode & S_IRGRP)
tmode |= FILEIO_S_IRGRP;
+#endif
+#ifdef S_IWRGRP
if (mode & S_IWGRP)
tmode |= FILEIO_S_IWGRP;
+#endif
+#ifdef S_IXGRP
if (mode & S_IXGRP)
tmode |= FILEIO_S_IXGRP;
+#endif
if (mode & S_IROTH)
tmode |= FILEIO_S_IROTH;
+#ifdef S_IWOTH
if (mode & S_IWOTH)
tmode |= FILEIO_S_IWOTH;
+#endif
+#ifdef S_IXOTH
if (mode & S_IXOTH)
tmode |= FILEIO_S_IXOTH;
+#endif
return tmode;
}