This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: ssh-host-config produces Win32 error 1057 on systems with non-ASCII computer names


On 2013-03-06 12:39, Corinna Vinschen wrote:
On Mar 6 12:26, Johan Ehnberg wrote:
Dears,

I am running a fresh install of the latest stable cygwin on a fresh
install of vanilla Windows 7 64-bit Finnish, with computer name
"KÃyttÃjÃ-PC". When I run 'ssh-host-config -y' the service
installation phase fails on the Finnish equivalent of "cygrunsrv:
Error installing a service: CreateService:  Win32 error 1057: The
account name is invalid or does not exist, or the password is
invalid for the account name specified."

Changing the computer name to just "PC", rebooting and retrying
works around the problem. Localized output from Windows in cygwin
with non-ASCII characters still looks awful by default though :)

Running 'ssh-host-config -y -d' succeeds in installing the service
with warnings, and as cyg_server is not taking over incoming privsep
logins it still does not work. A wild guess is that the non-ASCII
computer name somehow affects the user creation or granting
privileges.

As a side note, non-ASCII user names work well and are not affected
by this. As long as proper code pages are consistently used,
non-ASCII user names are a challenge to be handled primarily between
different systems consoles and file formats.

I thought I'd throw this out there as could not find earlier
messages about this. At least someone googling can find the
workaround. Non-ASCII host/computer names are often not well handled
elsewhere anyway, so there are more reasons than this to avoid them.

This is the fault of the cygrunsrv tool, which still uses the ANSI variants of the Win32 API. The default codeset under Cygwin is UTF-8, but that doesn't match your Windows ANSI codepage 1252, so that's what probably goes wrong.

Cygrunsrv has to be changed to use the UNICODE variants of the
Windows Service API to get that working.


Corinna



Thank you for the prompt answer, it seems to be just on the spot.


For future reference, the default codepage for this Windows variant, as reported by chcp, is 850. Using codepage 1252 works mostly, but will garble up cmd with some characters and may cause trouble in batch scripts with non-ASCII characters. Interestingly, Notepad does not support codepage 850 but uses codepage 1252 on the same system. This can fool the user and mess up scripts after edits.

On the other hand, I have understood that Windows is also known for not running Unicode batch scripts properly - changing cygrunsrv alone may not yet solve this for automated batch script installations?

Johan

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]