Talk About Network

Google


Register and Login
Nick
Password
Register create new account Sign up is FREE and you can post replies, new topics, bookmark posts and more!
Recover lost password


Mac > Mac Programmer > Re: Get login n...
Latest [ Topics | Posts ] Archive Post A New Topic Post a Reply
<< Topic < Post Post 2 of 49 Topic 942 of 1040
Post > Topic >>

Re: Get login name and/or path to home directory of current user?

by SM Ryan <wyrmwif@[EMAIL PROTECTED] > May 30, 2007 at 07:33 AM

Don Bruder <dakidd@[EMAIL PROTECTED]
> wrote:
# I've checked everything that seems likely in the docs, but I'm coming up

# blank except for three Java methods, which don't help much, since I'm 
# coding to Carbon. 

I read the password file for the current user id. (MacOSX actually
gets the Netinfo, etc for you behind the scenes rather than just
/etc/passwd)

#include <sys/types.h>
#include <pwd.h>

int uid = getuid(); /*or geteuid()*/
struct passwd *pw = getpwuid(uid);

char *loginname = pw->pw_name;
char *homedirectory = pw->pw_dir;

For more information look at the manpages for getuid and getpwnam.


# The good news is that I always know the file's path: 
# "/Users/LoginName/Client.log", so I can easily pass it to 
# FSPathMakeRef() to get an FSRef to work with.

char fpath[] = "%s/Client.log";
char path[sizeof fpath+strlen(homedirectory)];
sprintf(path,fpath,homedirectory);

FSRef is evil.

# The bad news is that I can't figure out how to figure out who the user 
# running *MY* application is so that I can plug it into the path and get 
# an FSRef to the right user's file. 

Unix doesn't keep track of the user name, but the user id. There are
some weird things that can happen with setuid, daemons, etc, but for a
vanilla unix program running under a logged in user, the user id is
essentially the user name.

# As mentioned above, I've found three "likely suspects" in the XCode help

# system (currentFullUserName(), currentUserName(), and 
# currentHomeDirectory() ) that look like they'd do the job for me with 
# varying degrees of "make it dead simple", but all three are Java 
# methods, and I'm coding in C, to the Carbon API.

Probably they are all using getpwuid behind the scenes.

--
SM Ryan http://www.rawbw.com/~wyrmwif/
A bunch of savages in this town.
 




 49 Posts in Topic:
Get login name and/or path to home directory of current user?
Don Bruder <dakidd@[EM  2007-05-29 23:56:30 
Re: Get login name and/or path to home directory of current user
SM Ryan <wyrmwif@[EMAI  2007-05-30 07:33:28 
Re: Get login name and/or path to home directory of current user
Don Bruder <dakidd@[EM  2007-05-30 12:39:12 
Re: Get login name and/or path to home directory of current user
SM Ryan <wyrmwif@[EMAI  2007-06-01 08:26:55 
Re: Get login name and/or path to home directory of current user
Gregory Weston <uce@[E  2007-06-01 07:15:29 
Re: Get login name and/or path to home directory of current user
SM Ryan <wyrmwif@[EMAI  2007-06-01 12:47:58 
Re: Get login name and/or path to home directory of current user
Gregory Weston <uce@[E  2007-06-01 10:18:03 
Re: Get login name and/or path to home directory of current user
glenn andreas <gandrea  2007-06-01 11:00:38 
Re: Get login name and/or path to home directory of current user
russotto@[EMAIL PROTECTED  2007-06-03 20:38:20 
Re: Get login name and/or path to home directory of current user
glenn andreas <gandrea  2007-06-04 08:53:09 
Re: Get login name and/or path to home directory of current user
SM Ryan <wyrmwif@[EMAI  2007-06-01 18:43:50 
Re: Get login name and/or path to home directory of current user
Gregory Weston <uce@[E  2007-06-01 20:47:41 
Re: Get login name and/or path to home directory of current user
Don Bruder <dakidd@[EM  2007-06-01 19:05:34 
Re: Get login name and/or path to home directory of current user
Sean McBride <cwatson@  2007-06-02 13:26:49 
Re: Get login name and/or path to home directory of current user
SM Ryan <wyrmwif@[EMAI  2007-06-04 14:08:38 
Re: Get login name and/or path to home directory of current user
Bo Lindbergh <blgl@[EM  2007-05-30 11:27:08 
Re: Get login name and/or path to home directory of current user
Don Bruder <dakidd@[EM  2007-05-30 12:41:44 
Re: Get login name and/or path to home directory of current user
David Phillip Oster <o  2007-05-31 02:51:48 
Re: Get login name and/or path to home directory of current user
Don Bruder <dakidd@[EM  2007-05-30 20:59:08 
Re: Get login name and/or path to home directory of current user
Jens Ayton <IWISNEXPQQ  2007-05-31 21:29:13 
Re: Get login name and/or path to home directory of current user
Don Bruder <dakidd@[EM  2007-05-31 23:03:31 
Re: Get login name and/or path to home directory of current user
Gregory Weston <uce@[E  2007-06-01 07:20:53 
Re: Get login name and/or path to home directory of current user
SM Ryan <wyrmwif@[EMAI  2007-06-01 12:48:00 
Re: Get login name and/or path to home directory of current user
Gregory Weston <uce@[E  2007-06-01 10:28:13 
Re: Get login name and/or path to home directory of current user
SM Ryan <wyrmwif@[EMAI  2007-06-01 18:43:51 
Re: Get login name and/or path to home directory of current user
Gregory Weston <uce@[E  2007-06-01 20:34:55 
Re: Get login name and/or path to home directory of current user
Don Bruder <dakidd@[EM  2007-06-01 06:07:37 
Re: Get login name and/or path to home directory of current user
Gregory Weston <uce@[E  2007-06-01 10:46:07 
Re: Get login name and/or path to home directory of current user
Michael Ash <mike@[EMA  2007-06-01 10:19:22 
Re: Get login name and/or path to home directory of current user
SM Ryan <wyrmwif@[EMAI  2007-06-01 18:33:34 
Re: Get login name and/or path to home directory of current user
glenn andreas <gandrea  2007-06-01 16:14:02 
Re: Get login name and/or path to home directory of current user
Michael Ash <mike@[EMA  2007-06-01 16:54:16 
Re: Get login name and/or path to home directory of current user
Bo Lindbergh <blgl@[EM  2007-06-02 13:14:06 
Re: Get login name and/or path to home directory of current user
Michael Ash <mike@[EMA  2007-06-02 07:10:43 
Re: Get login name and/or path to home directory of current user
SM Ryan <wyrmwif@[EMAI  2007-06-01 18:33:46 
Re: Get login name and/or path to home directory of current user
SM Ryan <wyrmwif@[EMAI  2007-06-01 18:33:59 
Re: Get login name and/or path to home directory of current user
russotto@[EMAIL PROTECTED  2007-06-03 20:35:12 
Re: Get login name and/or path to home directory of current user
Gabriele Greco <gabrie  2007-06-11 15:59:22 
Re: Get login name and/or path to home directory of current user
Ben Artin <macdev@[EMA  2007-06-11 08:13:57 
Re: Get login name and/or path to home directory of current user
SM Ryan <wyrmwif@[EMAI  2007-06-11 23:02:08 
Re: Get login name and/or path to home directory of current user
Steven Fisher <steve@[  2007-06-12 00:42:44 
Re: Get login name and/or path to home directory of current user
Gregory Weston <uce@[E  2007-06-11 20:53:38 
Re: Get login name and/or path to home directory of current user
Ben Artin <macdev@[EMA  2007-06-11 17:58:24 
Re: Get login name and/or path to home directory of current user
Gregory Weston <uce@[E  2007-06-11 17:47:12 
Re: Get login name and/or path to home directory of current user
Michael Ash <mike@[EMA  2007-06-11 19:36:11 
Re: Get login name and/or path to home directory of current user
Steven Fisher <steve@[  2007-06-12 00:41:25 
Re: Get login name and/or path to home directory of current user
SM Ryan <wyrmwif@[EMAI  2007-06-01 07:52:08 
Re: Get login name and/or path to home directory of current user
Sherm Pendley <spamtra  2007-06-01 02:26:44 
Re: Get login name and/or path to home directory of current user
Clark Cox <clarkcox3@[  2007-05-31 16:24:03 

Post A Reply:
  Go here to Signup

AddThis Feed Button


About - Advertising - Contact - Frequently Asked Questions - Privacy Policy - Terms of Use - Signup

Contact
tan12V112 Fri Dec 5 7:30:51 CST 2008.