mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-04-30 03:40:34 +02:00
deprecate cuserid
* libguile/posix.c: * libguile/posix.h: * libguile/deprecated.h: * libguile/deprecated.c (scm_cuserid): Deprecate cuserid, as it only returns 8 bytes of a user's login. * doc/ref/posix.texi: Remove cuserid from docs.
This commit is contained in:
parent
e75184d5d2
commit
cd28785f79
5 changed files with 35 additions and 37 deletions
|
@ -1112,18 +1112,7 @@ or getgrent respectively.
|
|||
@end deffn
|
||||
|
||||
In addition to the accessor procedures for the user database, the
|
||||
following shortcut procedures are also available.
|
||||
|
||||
@deffn {Scheme Procedure} cuserid
|
||||
@deffnx {C Function} scm_cuserid ()
|
||||
Return a string containing a user name associated with the
|
||||
effective user id of the process. Return @code{#f} if this
|
||||
information cannot be obtained.
|
||||
|
||||
This function has been removed from the latest POSIX specification,
|
||||
Guile provides it only if the system has it. Using @code{(getpwuid
|
||||
(geteuid))} may be a better idea.
|
||||
@end deffn
|
||||
following shortcut procedure is also available.
|
||||
|
||||
@deffn {Scheme Procedure} getlogin
|
||||
@deffnx {C Function} scm_getlogin ()
|
||||
|
|
|
@ -2361,6 +2361,35 @@ int scm_internal_select (int fds,
|
|||
|
||||
|
||||
|
||||
#ifdef HAVE_CUSERID
|
||||
|
||||
# if !HAVE_DECL_CUSERID
|
||||
extern char *cuserid (char *);
|
||||
# endif
|
||||
|
||||
SCM_DEFINE (scm_cuserid, "cuserid", 0, 0, 0,
|
||||
(void),
|
||||
"Return a string containing a user name associated with the\n"
|
||||
"effective user id of the process. Return @code{#f} if this\n"
|
||||
"information cannot be obtained.")
|
||||
#define FUNC_NAME s_scm_cuserid
|
||||
{
|
||||
char buf[L_cuserid];
|
||||
char * p;
|
||||
|
||||
scm_c_issue_deprecation_warning
|
||||
("`cuserid' is deprecated. Use `(passwd:name (getpwuid (geteuid)))' instead.");
|
||||
|
||||
p = cuserid (buf);
|
||||
if (!p || !*p)
|
||||
return SCM_BOOL_F;
|
||||
return scm_from_locale_string (p);
|
||||
}
|
||||
#undef FUNC_NAME
|
||||
#endif /* HAVE_CUSERID */
|
||||
|
||||
|
||||
|
||||
void
|
||||
scm_i_init_deprecated ()
|
||||
{
|
||||
|
|
|
@ -736,6 +736,11 @@ SCM_DEPRECATED int scm_internal_select (int fds,
|
|||
SELECT_TYPE *efds,
|
||||
struct timeval *timeout);
|
||||
|
||||
/* Deprecated because the cuserid call is deprecated.
|
||||
*/
|
||||
SCM_API SCM scm_cuserid (void);
|
||||
|
||||
|
||||
|
||||
void scm_i_init_deprecated (void);
|
||||
|
||||
|
|
|
@ -1841,30 +1841,6 @@ SCM_DEFINE (scm_getlogin, "getlogin", 0, 0, 0,
|
|||
#undef FUNC_NAME
|
||||
#endif /* HAVE_GETLOGIN */
|
||||
|
||||
#ifdef HAVE_CUSERID
|
||||
|
||||
# if !HAVE_DECL_CUSERID
|
||||
extern char *cuserid (char *);
|
||||
# endif
|
||||
|
||||
SCM_DEFINE (scm_cuserid, "cuserid", 0, 0, 0,
|
||||
(void),
|
||||
"Return a string containing a user name associated with the\n"
|
||||
"effective user id of the process. Return @code{#f} if this\n"
|
||||
"information cannot be obtained.")
|
||||
#define FUNC_NAME s_scm_cuserid
|
||||
{
|
||||
char buf[L_cuserid];
|
||||
char * p;
|
||||
|
||||
p = cuserid (buf);
|
||||
if (!p || !*p)
|
||||
return SCM_BOOL_F;
|
||||
return scm_from_locale_string (p);
|
||||
}
|
||||
#undef FUNC_NAME
|
||||
#endif /* HAVE_CUSERID */
|
||||
|
||||
#if HAVE_GETPRIORITY
|
||||
SCM_DEFINE (scm_getpriority, "getpriority", 2, 0, 0,
|
||||
(SCM which, SCM who),
|
||||
|
|
|
@ -83,7 +83,6 @@ SCM_API SCM scm_sync (void);
|
|||
SCM_API SCM scm_crypt (SCM key, SCM salt);
|
||||
SCM_API SCM scm_chroot (SCM path);
|
||||
SCM_API SCM scm_getlogin (void);
|
||||
SCM_API SCM scm_cuserid (void);
|
||||
SCM_API SCM scm_getpriority (SCM which, SCM who);
|
||||
SCM_API SCM scm_setpriority (SCM which, SCM who, SCM prio);
|
||||
SCM_API SCM scm_getpass (SCM prompt);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue