🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.os.linux.programacion
Article #8372

Re: Capturar la salida de un programa

#8372
From: "Jesús M. NAVARRO"
Date: Wed, 13 Nov 2002 12:58
59 lines
3565 bytes
Hola:

J.A. Gutierrez wrote:
> :> : suproceso que se inicia.  En otro caso, no veo d�nde puede estar el 
> :> : peligro (no obstante, no soy programador, y agredecer�a las correcciones).
> :> 
> :> 	pues p.e., ya para empezar, te has dejado fuera el problema del IFS
> :> 
> :> 	PS: popen() comparte los peligros de system().
> :> 
> 
> : 2/ La entrada al programa se utiliza para modular la llamada a system.
> : y 3/ En dicha modulaci�n se emplea directamente la entrada recibida, sin 
> : depurar.
> 
> 	El problema del IFS no necesita para nada que el programa
> 	module la llamada a system/popen con la entrada de datos del
> 	usuario.
> 	Ahora bien, si consideras que las variables de entorno son
> 	entradas al programa, entonces si que tienes razon, pero no
> 	es algo que normalmente se considere asi...
> 

�Pero se pueden considerar de otro modo?
El entorno, o lo fijas al principio del programa (lo que se recomienda 
en todos los manuales de programaci�n orientada a sistemas) o son datos 
externos cuyo contenido no puedes controlar a priori y por lo tanto se 
ven afectados por el punto 2 que comentaba.

> 	(asi como tampoco se suele considerar dos roles diferentes
> 	como diferentes usuarios; no digo que no sea correcto considerarlo
> 	asi, si no que por lo general un programador no piensa en eso)
> 

���??? �Y por qu� no? Hombre, podr�a entender que eso es algo en lo que 
no piensa el programador, porque pensar en eso es trabajo del analista, 
pero yo dir�a que *s�* hay que pensarlo.

> 
> 	Ademas, aunque un programa no vaya a ser utilizados en entornos
> 	en los que importen consideraciones de seguridad, en un momento
> 	dado, a un tercero se le puede ocurrir una buena idea llamarlo
> 	desde un CGI o usarlo en otro entorno en el que si que importe,
> 	y ya tenemos el follon montado... Por eso, es mejor siempre que
> 	se pueda evitar system en favor de fork/exec+control de entrada
> 	y entorno.
> 

Esto es muy cierto: uno hace un "dirty hack" y se "olvida" de comentar 
la condiciones iniciales y de contorno.  Luego viene otro, lo ve, se 
dice "qu� bonito: me va a servir para hacer X"... por supuesto, en X 
cambian las condiciones y lo que era *razonablemente* adecuado, deja de 
serlo.
-- 
SALUD,
Jes�s
***
jesus_navarro@undominio.net
***
Technical Details
Message-ID: <ftu9a-6a9.ln1@mithrandir.intranet>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!newsfeed.stanford.edu!cyclone.bc.net!newsfeed.online.be!news.tele.dk!news.tele.dk!small.news.tele.dk!news.mailgate.org!news.albacom.net!seanews2.seabone.net!garse!news.iddeo.es!mithrandir.intranet!news
References: <3DD03990.1090606@ono.com> <aqqmu8$a0v56$1@ID-148170.news.dfncis.de> <mf57a-485.ln1@mithrandir.intranet> <aqrgst$l9c$1@news.unizar.es> <01u7a-vlm.ln1@mithrandir.intranet> <aqtb2h$dbh$1@news.unizar.es>

Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII
X-Google-Thread: f86c8,c70e8198e9aa783d
X-Google-Attributes: gidf86c8,public
X-Google-ArrivalTime: 2002-11-13 05:29:58 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!newsfeed.stanford.edu!cyclone.bc.net!newsfeed.online.be!news.tele.dk!news.tele.dk!small.news.tele.dk!news.mailgate.org!news.albacom.net!seanews2.seabone.net!garse!news.iddeo.es!mithrandir.intranet!news
From: "Jesús M. NAVARRO"
 <jesus_navarro@undominio.net>
Newsgroups: es.comp.os.linux.programacion
Subject: Re: Capturar la salida de un programa
Date: Wed, 13 Nov 2002 13:58:54 +0100
Organization: Iddeo - Retevisi�n
Lines: 60
Message-ID: <ftu9a-6a9.ln1@mithrandir.intranet>
References: <3DD03990.1090606@ono.com> <aqqmu8$a0v56$1@ID-148170.news.dfncis.de> <mf57a-485.ln1@mithrandir.intranet> <aqrgst$l9c$1@news.unizar.es> <01u7a-vlm.ln1@mithrandir.intranet> <aqtb2h$dbh$1@news.unizar.es>
NNTP-Posting-Host: 212.97.187.184
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 8bit
User-Agent: Mozilla/5.0 (X11; U; Linux i586; en-US; rv:1.1) Gecko/20020913 Debian/1.1-1
X-Accept-Language: es-es, es