X-Recipient: archive-cygwin@delorie.com
DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id
	:list-unsubscribe:list-subscribe:list-archive:list-post
	:list-help:sender:subject:to:references:from:message-id:date
	:mime-version:in-reply-to:content-type
	:content-transfer-encoding; q=dns; s=default; b=ji6mMVRt22gmE8sa
	4U5bdj4xLN8G9hc4oWqg/KOhCfnmHBzbeHLwMm+A/rjMSS6Eth+K+PrciH7gDg32
	3b3E9qUVp7+5hdodRY8jf05x44EQrWBuIQVQ41XJB5MEOLclzpSf5Qaz9BNAmVFW
	BTIO6S3jdTBEgLg1LmY0UPKZPAQ=
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id
	:list-unsubscribe:list-subscribe:list-archive:list-post
	:list-help:sender:subject:to:references:from:message-id:date
	:mime-version:in-reply-to:content-type
	:content-transfer-encoding; s=default; bh=m0fRbgyYVlXOVClsvRJuVU
	ZGKXQ=; b=akLC1AbDhT/SeWdEjVQrmDfzRqTpxUvRwmt26sHMvg8JoHhWsEsTvE
	5ScDJdy6BgOnrhqrTwi3Bt+7IUTAKe87OFe25gzZ0B07x9vehMiqBIr3qoChJVIN
	RlTZd2kPvbTpCfjhCYnxnKee2jrYQqRUj5NE947Bqe8v/UKv8ltMs=
Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe@cygwin.com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin@cygwin.com>
List-Help: <mailto:cygwin-help@cygwin.com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner@cygwin.com
Mail-Followup-To: cygwin@cygwin.com
Delivered-To: mailing list cygwin@cygwin.com
Authentication-Results: sourceware.org; auth=none
X-Spam-SWARE-Status: No, score=-1.9 required=5.0 tests=BAYES_00,SPF_PASS autolearn=ham version=3.3.1 spammy=Association, bldg, Prof, H*r:auth
X-HELO: scc-mailout-kit-02.scc.kit.edu
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=kit.edu; s=20190212;	h=Content-Transfer-Encoding:Content-Type:In-Reply-To:MIME-Version:Date:Message-ID:From:References:To:Subject; bh=Nvr2SLi8L1T0DPCHypeCr1nuh16Vd0GyYbhKMOFfOJo=;	b=B4i4a0eobQ9d4YJFKsKxDWhipD4vz2tctpfBnljjurksyUIYj/YB+ng/9+REdhNLL9JIxjkg/+QMhOorJoyfQr4AsfNDqKb3DSZV4rg45nk4yk30wyqvc6DroLfEIpMq/qJw649P6OCkwuw7+qbkP6gAj3cRxRMbz6C1Xr/O8PY=;
Subject: Re: Re: Are there any changes to the access control to /proc/<PID>/fd/1 in cygwin 3?
To: cygwin@cygwin.com
References: <a0527553-ef09-60dd-5019-7278c5f12835@teco.edu> <ce76246c-bf9e-9988-97f7-93e7e206d764@SystematicSw.ab.ca>
From: "Till Riedel [TM]" <till.riedel@kit.edu>
Message-ID: <b2eb4a82-c60e-de15-93d6-1840ce804afa@kit.edu>
Date: Thu, 20 Jun 2019 21:49:00 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.7.0
MIME-Version: 1.0
In-Reply-To: <ce76246c-bf9e-9988-97f7-93e7e206d764@SystematicSw.ab.ca>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi Brian,

thanks for the reply.

But proc/$$/fd/1 references the callers  stdout and not the callees as 
/dev/stdout or /proc/self/fd/2 if called from eg. from bash, because it 
is expanded before the call.

What I was able to do is to inject messages into the callers stdout and 
read from the callers stdin, which is when executing under elevated 
priviledges (the behaviour you would want for a sudo).

As said echo >/proc/$$/fd/1 hello world is not the problem and works 
fine as you said as well. (I probably should not have said strangely in 
the first place, because it is a whole different deal...)

BR

Till



Brian Inglis @ 16.06.2019 (17:42) :
> On 2019-06-15 12:27, Till Riedel wrote:
>> I have been using a very handy sudo hack, that broke lately (I think) when
>> updating cygwin: https://github.com/imachug/win-sudo
>> The trick is to spawn an elevated process using powershell and hook up the
>> calling file descripters. I now get "write error: Bad file descriptor"
>> To reproduce call:
>> powershell.exe Start-Process bash  \"-c\",\"\'echo \>\>/proc/$$/fd/1 hello
>> world\;sleep 10\'\"
>> IMHO this used to work in former versions (print out hello world on the calling
>> shell). Strangely
>> bash -c "echo >/proc/$$/fd/1 hello world"
>> works. So my initial guess is that is has to do with the decoupling of Cygwin
>> PIDs from Windows PIDs, but there were also changes in the proc file system...
>> Thanks a lot in advance for any help/thoughts!
> Given:
> $ bash -c 'ls -dglo /dev/std* /proc/self /proc/$$ /proc/self/fd/[012]'
> lrwxrwxrwx 1 15 May 14  2013 /dev/stderr -> /proc/self/fd/2
> lrwxrwxrwx 1 15 May 14  2013 /dev/stdin -> /proc/self/fd/0
> lrwxrwxrwx 1 15 May 14  2013 /dev/stdout -> /proc/self/fd/1
> dr-xr-xr-x 3  0 Jun 16 01:37 /proc/23846
> lrwxrwxrwx 1  0 Jun 16 01:37 /proc/self -> 23846
> lrwxrwxrwx 1  0 Jun 16 01:37 /proc/self/fd/0 -> /dev/pty0
> lrwxrwxrwx 1  0 Jun 16 01:37 /proc/self/fd/1 -> /dev/pty0
> lrwxrwxrwx 1  0 Jun 16 01:37 /proc/self/fd/2 -> /dev/pty0
>
> the following seems to work as expected:
> $ powershell Start-Process bash  \"-c\",\"\'echo \>\>/dev/stdout hello
> world\;sleep 10\'\"
>
-- 
KIT- Research University in the Helmholtz Association

Dr.-Ing. Till Riedel
Lab Leader TECO, SDSC-BW/SDIL (AR)

Karlsruhe Institute of Technology (KIT)
Institute of Telematics (TM)
Pervasive Computing Systems - Prof. Beigl


Bldg. 07.07., Room 211
Vincenz Prießnitz Str. 1, 76131 Karlsruhe

+49 (0)721 608 41706
www.teco.kit.edu/~riedel


--
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

