make real symbols for the legacy (nonstandardized) utmp functions

this is needed in the long term for ABI compatibility anyway, and in
the immediate, it helps with building broken programs like GNU screen
that try to prototype the functions themselves rather than using the
header.
This commit is contained in:
Rich Felker 2011-02-20 15:06:26 -05:00
parent d6a1e0c79e
commit eee150f39c
2 changed files with 23 additions and 6 deletions

View File

@ -1,6 +1,10 @@
#ifndef _UTMP_H
#define _UTMP_H
#ifdef __cplusplus
extern "C" {
#endif
#include <utmpx.h>
#define ut_time ut_tv.tv_sec
@ -9,15 +13,20 @@
#define e_termination __e_termination
#define e_exit __e_exit
#define utmp utmpx
#define endutent endutxent
#define getutent getutxent
#define setutent setutxent
#define getutid getutxid
#define getutline getutxline
#define pututline pututxline
#define utmpname(x) (-1)
void endutent(void);
struct utmp *getutent(void);
struct utmp *getutid(const struct utmp *);
struct utmp *getutline(const struct utmp *);
struct utmp *pututline(const struct utmp *);
void setutent(void);
#define _PATH_UTMP "/dev/null"
#define _PATH_WTMP "/dev/null"
#ifdef __cplusplus
}
#endif
#endif

View File

@ -1,5 +1,6 @@
#include <utmpx.h>
#include <stddef.h>
#include "libc.h"
void endutxent(void)
{
@ -28,3 +29,10 @@ struct utmpx *pututxline(const struct utmpx *ut)
{
return NULL;
}
weak_alias(endutxent, endutent);
weak_alias(setutxent, setutent);
weak_alias(getutxent, getutent);
weak_alias(getutxid, getutid);
weak_alias(getutxline, getutline);
weak_alias(pututxline, pututline);