mescc: Mes C Library: Support GNU Tar: Add getgrgid, getgrnam, setgrent stub.
authorJan Nieuwenhuizen <janneke@gnu.org>
Wed, 24 Jul 2019 10:23:54 +0000 (12:23 +0200)
committerJan Nieuwenhuizen <janneke@gnu.org>
Wed, 24 Jul 2019 10:23:54 +0000 (12:23 +0200)
* include/grp.h: New file.
* lib/stub/getgrgid.c: New file.
* lib/stub/getgrnam.c: New file.
* lib/stub/setgrent.c: New file.
* lib/libc+gnu.c: Include them.

build-aux/configure-lib.sh
lib/stub/getgrgid.c [new file with mode: 0644]
lib/stub/getgrnam.c [new file with mode: 0644]
lib/stub/setgrent.c [new file with mode: 0644]

index c862fdeb0bd33da0f0abbb033d3d6187b8743628..5ffb8b3d547c0df61bec2e1a6f3a805f0d0a9f82 100644 (file)
@@ -271,6 +271,8 @@ lib/stub/fpurge.c
 lib/stub/freadahead.c
 lib/stub/frexp.c
 lib/stub/fscanf.c
+lib/stub/getgrgid.c
+lib/stub/getgrnam.c
 lib/stub/getlogin.c
 lib/stub/getpgid.c
 lib/stub/getpgrp.c
@@ -283,6 +285,7 @@ lib/stub/popen.c
 lib/stub/rand.c
 lib/stub/rewind.c
 lib/stub/setbuf.c
+lib/stub/setgrent.c
 lib/stub/setlocale.c
 lib/stub/setvbuf.c
 lib/stub/sigaddset.c
diff --git a/lib/stub/getgrgid.c b/lib/stub/getgrgid.c
new file mode 100644 (file)
index 0000000..9859b8d
--- /dev/null
@@ -0,0 +1,35 @@
+/* -*-comment-start: "//";comment-end:""-*-
+ * GNU Mes --- Maxwell Equations of Software
+ * Copyright © 2018,2019 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
+ *
+ * This file is part of GNU Mes.
+ *
+ * GNU Mes is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 3 of the License, or (at
+ * your option) any later version.
+ *
+ * GNU Mes is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with GNU Mes.  If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include <mes/lib.h>
+#include <grp.h>
+
+struct group *
+getgrgid (gid_t gid)
+{
+  static int stub = 0;
+  if (__mes_debug () && !stub)
+    eputs ("getgrid stub\n");
+  static char *groups[2] = {"root", 0 };
+  static struct group root = {"root", 0, groups};
+  stub = 1;
+  errno = 0;
+  return &root;
+}
diff --git a/lib/stub/getgrnam.c b/lib/stub/getgrnam.c
new file mode 100644 (file)
index 0000000..466d738
--- /dev/null
@@ -0,0 +1,35 @@
+/* -*-comment-start: "//";comment-end:""-*-
+ * GNU Mes --- Maxwell Equations of Software
+ * Copyright © 2018,2019 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
+ *
+ * This file is part of GNU Mes.
+ *
+ * GNU Mes is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 3 of the License, or (at
+ * your option) any later version.
+ *
+ * GNU Mes is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with GNU Mes.  If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include <mes/lib.h>
+#include <grp.h>
+
+struct group *
+getgrnam (char const *name)
+{
+  static int stub = 0;
+  if (__mes_debug () && !stub)
+    eputs ("getgrid stub\n");
+  static char *groups[2] = {"root", 0 };
+  static struct group root = {"root", 0, groups};
+  stub = 1;
+  errno = 0;
+  return &root;
+}
diff --git a/lib/stub/setgrent.c b/lib/stub/setgrent.c
new file mode 100644 (file)
index 0000000..5e6e27e
--- /dev/null
@@ -0,0 +1,31 @@
+/* -*-comment-start: "//";comment-end:""-*-
+ * GNU Mes --- Maxwell Equations of Software
+ * Copyright © 2018,2019 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
+ *
+ * This file is part of GNU Mes.
+ *
+ * GNU Mes is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 3 of the License, or (at
+ * your option) any later version.
+ *
+ * GNU Mes is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with GNU Mes.  If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include <mes/lib.h>
+
+void
+setgrent (void)
+{
+  static int stub = 0;
+  if (__mes_debug () && !stub)
+    eputs ("setgrent stub\n");
+  stub = 1;
+  errno = 0;
+}