sgroupio.h \
shadow/grp/agetgroups.c \
shadow/grp/agetgroups.h \
+ shadow/gshadow/gshadow.c \
+ shadow/gshadow/gshadow.h \
shadow/gshadow/putsgent.c \
shadow/gshadow/putsgent.h \
shadowio.c \
#include "alloc/realloc.h"
#include "defines.h"
#include "prototypes.h"
+#include "shadow/gshadow/gshadow.h"
#include "string/strcmp/streq.h"
#include "string/strtok/stpsep.h"
#include "string/strtok/strsep2arr.h"
#include "string/strtok/xastrsep2ls.h"
-static /*@null@*/FILE *shadow;
static struct sgrp sgroup = {};
void setsgent (void)
{
- if (NULL != shadow) {
- rewind (shadow);
+ if (NULL != gshadow) {
+ rewind(gshadow);
} else {
- shadow = fopen (SGROUP_FILE, "re");
+ gshadow = fopen(SGROUP_FILE, "re");
}
}
void endsgent (void)
{
- if (NULL != shadow) {
- (void) fclose (shadow);
+ if (NULL != gshadow) {
+ fclose(gshadow);
}
- shadow = NULL;
+ gshadow = NULL;
}
/*@observer@*//*@null@*/struct sgrp *
/*@observer@*//*@null@*/struct sgrp *getsgent (void)
{
- if (NULL == shadow) {
+ if (NULL == gshadow) {
setsgent ();
}
- return (fgetsgent (shadow));
+ return fgetsgent(gshadow);
}
/*
--- /dev/null
+// SPDX-FileCopyrightText: 1990-1994, Julianne Frances Haugh
+// SPDX-FileCopyrightText: 1996-1998, Marek Michałkiewicz
+// SPDX-FileCopyrightText: 2005, Tomasz Kłoczko
+// SPDX-FileCopyrightText: 2008-2009, Nicolas François
+// SPDX-FileCopyrightText: 2024, Alejandro Colomar <alx@kernel.org>
+// SPDX-License-Identifier: BSD-3-Clause
+
+
+#include "config.h"
+
+#include "shadow/gshadow/gshadow.h"
+
+#include <stddef.h>
+#include <stdio.h>
+
+
+FILE *gshadow = NULL;
--- /dev/null
+// SPDX-FileCopyrightText: 1988-1994, Julianne Frances Haugh
+// SPDX-FileCopyrightText: 1996-1997, Marek Michałkiewicz
+// SPDX-FileCopyrightText: 2003-2005, Tomasz Kłoczko
+// SPDX-FileCopyrightText: 2024, Alejandro Colomar <alx@kernel.org>
+// SPDX-License-Identifier: BSD-3-Clause
+
+
+#ifndef SHADOW_INCLUDE_LIB_SHADOW_GSHADOW_GSHADOW_H_
+#define SHADOW_INCLUDE_LIB_SHADOW_GSHADOW_GSHADOW_H_
+
+
+#include "config.h"
+
+#include <stdio.h>
+
+
+extern FILE *gshadow;
+
+
+#endif // include guard