From c284eb4e38721f567db15bde24ea53822d0cefb4 Mon Sep 17 00:00:00 2001 From: Aris Adamantiadis Date: Fri, 7 Mar 2008 02:11:40 +0000 Subject: second part of win32 changes git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@143 7dcaeef0-15fb-0310-b436-a5af3365683c --- libssh/misc.c | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) (limited to 'libssh/misc.c') diff --git a/libssh/misc.c b/libssh/misc.c index b9400f7..84dd4ea 100644 --- a/libssh/misc.c +++ b/libssh/misc.c @@ -24,11 +24,20 @@ MA 02111-1307, USA. */ #include #include #include -#include #include + +#ifdef _WIN32 +#define _WIN32_IE 0x0400 //SHGetSpecialFolderPath +#include +#include +#else +#include #include +#endif + #include "libssh/libssh.h" +#ifndef _WIN32 /* if the program was executed suid root, don't trust the user ! */ static int is_trusted(){ if(geteuid()!=getuid()) @@ -77,6 +86,18 @@ char *ssh_get_user_home_dir(){ return get_homedir_from_uid(getuid()); } +#else /* _WIN32 */ + +char *ssh_get_user_home_dir(){ + static char szPath[MAX_PATH]; + if (SHGetSpecialFolderPathA(NULL, szPath, CSIDL_PROFILE, TRUE)) + return szPath; + else + return NULL; +} + +#endif + /* we have read access on file */ int ssh_file_readaccess_ok(char *file){ if(!access(file,R_OK)) -- cgit