This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Andreas Jaeger <aj@suse.de> writes: > The file is not complete in cvs, it contains only the start of the > copyright header. Andreas, could you send a fix, please? Here's a fixed version from bugzilla (with some minor nits after comparison with the utmpx-convert.h file) - ok to commit? I tested this with a build on s390 and s390x, Andreas 2008-09-02 Andreas Jaeger <aj@suse.de> * sysdeps/unix/sysv/linux/s390/s390-32/utmp-convert.h: Fix last commit. ============================================================ Index: sysdeps/unix/sysv/linux/s390/s390-32/utmp-convert.h --- sysdeps/unix/sysv/linux/s390/s390-32/utmp-convert.h 26 Jul 2008 17:41:38 -0000 1.1 +++ sysdeps/unix/sysv/linux/s390/s390-32/utmp-convert.h 2 Sep 2008 08:13:12 -0000 @@ -15,3 +15,74 @@ You should have received a copy of the GNU Lesser General Public License along with the GNU C Library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA + Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA + 02111-1307 USA. */ + + +/* This file provides functions converting between the 32 and 64 bit + struct utmp variants. */ + +#ifndef _UTMP_CONVERT_H +#define _UTMP_CONVERT_H 1 + +#include <string.h> + +#include "utmp32.h" + +/* Convert the 64 bit struct utmp value in FROM to the 32 bit version + returned in TO. */ +static inline void +utmp_convert64to32 (__const struct utmp *from, struct utmp32 *to) +{ +#if _HAVE_UT_TYPE - 0 + to->ut_type = from->ut_type; +#endif +#if _HAVE_UT_PID - 0 + to->ut_pid = from->ut_pid; +#endif + memcpy (to->ut_line, from->ut_line, UT_LINESIZE); + memcpy (to->ut_user, from->ut_user, UT_NAMESIZE); +#if _HAVE_UT_ID - 0 + memcpy (to->ut_id, from->ut_id, 4); +#endif +#if _HAVE_UT_HOST - 0 + memcpy (to->ut_host, from->ut_host, UT_HOSTSIZE); +#endif + to->ut_exit = from->ut_exit; + to->ut_session = (int32_t) from->ut_session; +#if _HAVE_UT_TV - 0 + to->ut_tv.tv_sec = (int32_t) from->ut_tv.tv_sec; + to->ut_tv.tv_usec = (int32_t) from->ut_tv.tv_usec; +#endif + memcpy (to->ut_addr_v6, from->ut_addr_v6, 4 * 4); +} + +/* Convert the 32 bit struct utmp value in FROM to the 64 bit version + returned in TO. */ +static inline void +utmp_convert32to64 (__const struct utmp32 *from, struct utmp *to) +{ +#if _HAVE_UT_TYPE - 0 + to->ut_type = from->ut_type; +#endif +#if _HAVE_UT_PID - 0 + to->ut_pid = from->ut_pid; +#endif + memcpy (to->ut_line, from->ut_line, UT_LINESIZE); + memcpy (to->ut_user, from->ut_user, UT_NAMESIZE); +#if _HAVE_UT_ID - 0 + memcpy (to->ut_id, from->ut_id, 4); +#endif +#if _HAVE_UT_HOST - 0 + memcpy (to->ut_host, from->ut_host, UT_HOSTSIZE); +#endif + to->ut_exit = from->ut_exit; + to->ut_session = (int64_t) from->ut_session; +#if _HAVE_UT_TV - 0 + to->ut_tv.tv_sec = (int64_t) from->ut_tv.tv_sec; + to->ut_tv.tv_usec = (int64_t) from->ut_tv.tv_usec; +#endif + memcpy (to->ut_addr_v6, from->ut_addr_v6, 4 * 4); +} + +#endif /* utmp-convert.h */ -- Andreas Jaeger, Director Platform / openSUSE, aj@suse.de SUSE LINUX Products GmbH, GF: Markus Rex, HRB 16746 (AG Nürnberg) Maxfeldstr. 5, 90409 Nürnberg, Germany GPG fingerprint = 93A3 365E CE47 B889 DF7F FED1 389A 563C C272 A126
Attachment:
pgp00000.pgp
Description: PGP signature
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |