Revert "Drop unused function subid_init()"

As rbalint points out, this was an exported fn.  It also is
the only way for a libsubid user to do what it does, so let's
not drop it.

This reverts commit 477c8e6f42.
This commit is contained in:
Serge Hallyn 2022-08-21 13:14:37 -05:00
parent eb3562f3c0
commit 7136e24f8a
2 changed files with 41 additions and 0 deletions

View File

@ -17,6 +17,31 @@
#include "subid.h" #include "subid.h"
#include "shadowlog.h" #include "shadowlog.h"
bool subid_init(const char *progname, FILE * logfd)
{
FILE *shadow_logfd;
if (progname) {
progname = strdup(progname);
if (!progname)
return false;
log_set_progname(progname);
} else {
log_set_progname("(libsubid)");
}
if (logfd) {
log_set_logfd(logfd);
return true;
}
shadow_logfd = fopen("/dev/null", "w");
if (!shadow_logfd) {
log_set_logfd(stderr);
return false;
}
log_set_logfd(shadow_logfd);
return true;
}
static static
int get_subid_ranges(const char *owner, enum subid_type id_type, struct subid_range **ranges) int get_subid_ranges(const char *owner, enum subid_type id_type, struct subid_range **ranges)
{ {

View File

@ -39,6 +39,22 @@ enum subid_status {
extern "C" { extern "C" {
#endif #endif
/*
* subid_init: initialize libsubid
*
* @progname: Name to display as program. If NULL, then "(libsubid)" will be
* shown in error messages.
* @logfd: Open file pointer to pass error messages to. If NULL, then
* /dev/null will be opened and messages will be sent there. The
* default if libsubid_init() is not called is stderr (2).
*
* This function does not need to be called. If not called, then the defaults
* will be used.
*
* Returns false if an error occurred.
*/
bool subid_init(const char *progname, FILE *logfd);
/* /*
* subid_get_uid_ranges: return a list of UID ranges for a user * subid_get_uid_ranges: return a list of UID ranges for a user
* *