xref: /csrg-svn/usr.bin/uucp/port/getwd.c (revision 44709)
113656Ssam #ifndef lint
2*44709Strent static char sccsid[] = "@(#)getwd.c	5.5 (Berkeley) 06/29/90";
313656Ssam #endif
413656Ssam 
513656Ssam #include "uucp.h"
613656Ssam 
717835Sralph /*
817835Sralph  *	get working directory
913656Ssam  *
1023605Sbloom  *	return codes  0 = FAIL
1123605Sbloom  *		      wkdir = SUCCES
1213656Ssam  */
1313656Ssam 
1423605Sbloom char *
1523605Sbloom getwd(wkdir)
1613656Ssam register char *wkdir;
1713656Ssam {
1813656Ssam 	register FILE *fp;
1913656Ssam 	extern FILE *rpopen();
2013656Ssam 	extern int rpclose();
2113656Ssam 	register char *c;
2213656Ssam 
2313656Ssam 	*wkdir = '\0';
24*44709Strent 	if ((fp = rpopen("PATH=/bin:/usr/bin;pwd 2>&-", "r")) == NULL)
2523605Sbloom 		return 0;
2617835Sralph 	if (fgets(wkdir, 100, fp) == NULL) {
2717835Sralph 		rpclose(fp);
2823605Sbloom 		return 0;
2913656Ssam 	}
3013656Ssam 	if (*(c = wkdir + strlen(wkdir) - 1) == '\n')
3113656Ssam 		*c = '\0';
3213656Ssam 	rpclose(fp);
3323605Sbloom 	return wkdir;
3413656Ssam }
35