[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Bug/Problem ${HOME} variable not honored on WIndows

Problem statement:

   Users get DIFFERENT HOME directory locations depending if they are attached to  windows network (ie: corporate network)

   Or if the user is not attached to the Server.

Where this occurs:

   This problem boils up into GIT on Windows when switching between a network configuration and a non-network configuration

Where does the problem occur:

This problem occurs in the function ${libssh}/src/misc.c - function ssh_get_user_home_dir()

The windows implementation should honor the $HOME variable, it currently does not.

The windows implementation calls SHGetSpecialFolderPath( ..., CSIDL_PROFILE, TRUE )

 Effectively - this is described as:  C:\users\<USERNAME> - aka: The windows Home Directory

HOWEVER - when attached to a microsoft network this often becomes a location on the corporate network, I believe this has to do with "roaming profiles" - of which I cannot control the corporate powers that be - they make the rules not me, I live with the rules.

The result of which is that  "~/.ssh" - dynamically changes from c:\users\<USERNAME>\.ssh  to \\someserver\someplace\yourprofile

Which means various SSH keys are stored on the server, and other times stored on the local machine.

As a result - if I turn on my laptop and connect to the corporate server - My home directory (PROFILE DIR) points at the server.

If I then close up (suspend) my laptop and restart somewhere else without a connection to the corporate server my PROFILE_DIR points to my C drive

My belief is this:  libssh and thus the rest of SSH should honor the ${HOME} variable

The Unix implementation does use the $HOME variable

It currently does not.

Re: Bug/Problem ${HOME} variable not honored on WIndowsAndreas Schneider <asn@xxxxxxxxxxxxxx>
Archive administrator: postmaster@lists.cynapses.org