Mercurial > pidgin.yaz
view src/protocols/zephyr/ZGetSender.c @ 4349:0c68d402f59f
[gaim-migrate @ 4614]
XML Blist
Gaim stores all the buddy lists in one big happy file now. You can order
the buddies however you want, and they'll stay ordered that way.
We can also store some per-buddy information now, which will be cool.
committer: Tailor Script <tailor@pidgin.im>
author | Nathan Walp <nwalp@pidgin.im> |
---|---|
date | Sun, 19 Jan 2003 22:16:52 +0000 |
parents | 424a40f12a6c |
children | 43d6c08d7e96 |
line wrap: on
line source
/* This file is part of the Project Athena Zephyr Notification System. * It contains source for the ZGetSender.c function. * * Created by: Robert French * * $Source$ * $Author: warmenhoven $ * * Copyright (c) 1987, 1991 by the Massachusetts Institute of Technology. * For copying and distribution information, see the file * "mit-copyright.h". */ /* $Header$ */ #include <internal.h> #ifndef lint static const char rcsid_ZGetSender_c[] = "$Id: ZGetSender.c 2096 2001-07-31 01:00:39Z warmenhoven $"; #endif #include <pwd.h> char *ZGetSender() { struct passwd *pw; #ifdef ZEPHYR_USES_KERBEROS char pname[ANAME_SZ], pinst[INST_SZ], prealm[REALM_SZ]; static char sender[ANAME_SZ+INST_SZ+REALM_SZ+3] = ""; #else static char sender[128] = ""; #endif /* Return it if already cached */ if (*sender) return (sender); #ifdef ZEPHYR_USES_KERBEROS if (krb_get_tf_fullname((char *)TKT_FILE, pname, pinst, prealm) == KSUCCESS) { (void) sprintf(sender, "%s%s%s@%s", pname, (pinst[0]?".":""), pinst, prealm); return (sender); } #endif /* XXX a uid_t is a u_short (now), but getpwuid * wants an int. AARGH! */ pw = getpwuid((int) getuid()); if (!pw) return ("unknown"); (void) sprintf(sender, "%s@%s", pw->pw_name, __Zephyr_realm); return (sender); }