From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 46223 invoked by alias); 18 Jan 2017 03:34:31 -0000 Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner@cygwin.com Mail-Followup-To: cygwin@cygwin.com Received: (qmail 45981 invoked by uid 89); 18 Jan 2017 03:34:24 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-0.5 required=5.0 tests=BAYES_05,RCVD_IN_DNSWL_LOW,SPF_SOFTFAIL autolearn=no version=3.3.2 spammy=2017-01-18, H*RU:sk:220-245, Hx-spam-relays-external:sk:220-245, H*r:sk:220-245 X-HELO: mail14.tpgi.com.au Received: from mail14.tpgi.com.au (HELO mail14.tpgi.com.au) (203.12.160.182) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 18 Jan 2017 03:34:14 +0000 X-TPG-Junk-Status: Message not scanned X-TPG-Abuse: host=220-245-251-204.static.tpgi.com.au; ip=220.245.251.204; date=Wed, 18 Jan 2017 14:34:09 +1100 Received: from [0.0.0.0] (220-245-251-204.static.tpgi.com.au [220.245.251.204]) by mail14.tpgi.com.au (envelope-from lithium-cygwin@shaddybaddah.name) (8.14.3/8.14.3) with ESMTP id v0I3Y58b004652 for ; Wed, 18 Jan 2017 14:34:09 +1100 To: cygwin@cygwin.com From: Shaddy Baddah Subject: ssh-host-config: patch fix debug option + broken for me on Vista (non-domain) Message-ID: <84a7692e-041a-8b99-2ea9-fb1c784fc01c@shaddybaddah.name> Date: Wed, 18 Jan 2017 03:34:00 -0000 User-Agent: Mozilla/5.0 (X11; Linux i686; rv:45.0) Gecko/20100101 Icedove/45.6.0 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="------------D85E7718207D69BE05ACFA9E" X-IsSubscribed: yes X-SW-Source: 2017-01/txt/msg00233.txt.bz2 --------------D85E7718207D69BE05ACFA9E Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Content-length: 4102 Hi, First please find attached a simple patch that fixes a problem I encountered running ssh-host-config with the --debug option. Pretty simple. Without redirecting the output of csih_stacktrace() to stderr, then (3.5.4) Command Substitution of functions that call it will run into problems. And the one that I encountered was this one: cygwin-service-installation-helper.sh:1147:csih_mktemp () cygwin-service-installation-helper.sh:1148:{ cygwin-service-installation-helper.sh:1149: csih_stacktrace "${@}" cygwin-service-installation-helper.sh:1150: $_csih_trace cygwin-service-installation-helper.sh:1152: local __umask=$(umask) cygwin-service-installation-helper.sh:1153: local rval cygwin-service-installation-helper.sh:1154: local tmpdir cygwin-service-installation-helper.sh:1156: tmpdir=$(csih_writable_tmpdir) || return 1 cygwin-service-installation-helper.sh:1158: umask 0077 cygwin-service-installation-helper.sh:1159: /usr/bin/mktemp --tmpdir="${tmpdir}" "$@" tmpdir will be filled with stacktrace output from the csih_writable_tmpdir() call, and mktemp will fail. Further, there is definitely a bug, at least for me, with running ssh-host-config on Vista (32 bit, but that shouldn't matter) in a non-domain environment. The script obviously confuses the form of username construct to use at various points. I encounter the following error: *** Info: This script plans to use 'cyg_server'. *** Info: 'cyg_server' will only be used by registered services. no *** Query: Create new privileged user account 'LIBRA-VW\cyg_server' (Cygwin name: 'libra-vw+cyg_server')? (yes/no) yes *** Info: Please enter a password for new user libra-vw+cyg_server. Please be sure *** Info: that this password matches the password rules given on your system. *** Info: Entering no password will exit the configuration. *** Query: Please enter the password: *** Query: Reenter: *** Info: User 'libra-vw+cyg_server' has been created with password 'melum0m0'. *** Info: If you change the password, please remember also to change the *** Info: password for the installed services which use (or will soon use) *** Info: the 'libra-vw+cyg_server' account. passwd: unknown user libra-vw+cyg_server *** Warning: Setting password expiry for user 'libra-vw+cyg_server' failed! *** Warning: Please check that password never expires or set it to your needs. No user or group 'libra-vw+cyg_server' known. *** Warning: Assigning the appropriate privileges to user 'libra-vw+cyg_server' failed! *** ERROR: There was a serious problem creating a privileged user. yes *** Warning: Expected privileged user 'libra-vw+cyg_server' does not exist. *** Warning: Defaulting to 'SYSTEM' *** Info: The sshd service has been installed under the LocalSystem *** Info: account (also known as SYSTEM). To start the service now, call *** Info: `net start sshd' or `cygrunsrv -S sshd'. Otherwise, it *** Info: will start automatically after the next reboot. *** Warning: Host configuration exited with 1 errors or warnings! *** Warning: Make sure that all problems reported are fixed, *** Warning: then re-run ssh-host-config. And I'm sure the problem is that this well-intended change to the script fails on the assumption that LOGONSERVER is always populated. It isn't for me on Vista. cygwin-service-installation-helper.sh:2884: # This test succeeds on domain member machines only, not on DCs. cygwin-service-installation-helper.sh:2885: if [ "\\\\${COMPUTERNAME,,*}" != "${LOGONSERVER,,*}" \ cygwin-service-installation-helper.sh:2886: -a "${LOGONSERVER}" != "\\\\MicrosoftAccount" ] cygwin-service-installation-helper.sh:2887: then cygwin-service-installation-helper.sh:2888: # Lowercase of USERDOMAIN cygwin-service-installation-helper.sh:2889: csih_PRIVILEGED_USERNAME="${COMPUTERNAME,,*}+${username}" cygwin-service-installation-helper.sh:2890: fi cygwin-service-installation-helper.sh:2891: fi I fixed this by modifying the test to check LOGONSERVER is not empty: if [ -n "${LOGONSERVER}" -a "\\\\... Can this be fixed in the next release? -- Regards, Shaddy --------------D85E7718207D69BE05ACFA9E Content-Type: text/x-patch; name="fix-ssh-host-config-debug.diff" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="fix-ssh-host-config-debug.diff" Content-length: 401 --- cygwin-service-installation-helper.sh.orig 2015-10-28 20:23:49.000000000 +1100 +++ cygwin-service-installation-helper.sh 2017-01-18 14:04:40.856126700 +1100 @@ -384,7 +384,7 @@ fi n=$(($n-1)) done - echo -e "${_csih_STACKTRACE_STR} ${val} ${@}" + echo -e "${_csih_STACKTRACE_STR} ${val} ${@}" 1>&2 fi } # === End of csih_stacktrace() === # readonly -f csih_stacktrace --------------D85E7718207D69BE05ACFA9E Content-Type: text/plain; charset=us-ascii Content-length: 219 -- 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 --------------D85E7718207D69BE05ACFA9E--