diff options
author | ramon <ramongomez@us.es> | 2010-11-12 22:16:35 +0000 |
---|---|---|
committer | ramon <ramongomez@us.es> | 2010-11-12 22:16:35 +0000 |
commit | 2beed29f2e901032e5b997164ba5a61b8ea730fb (patch) | |
tree | 0cf3a7364ca2a59918334cf650ca432ae5a726d5 /admin | |
parent | 0fbc05e7e6dbf609ab41c04c3061982fba4bdaa0 (diff) |
Se producía un posible error de ejecución de subproceso por desbordamiento de memoria, ya que la función C {{{execv}}} tiene que recibir una matriz de cadena donde el último elemento sea {{{NULL}}}.
Close #250.
git-svn-id: https://opengnsys.es/svn/trunk@1338 a21b9725-9963-47de-94b9-378ad31fedc9
Diffstat (limited to 'admin')
-rw-r--r-- | admin/Sources/Clients/ogAdmClient/sources/ogAdmClient.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/admin/Sources/Clients/ogAdmClient/sources/ogAdmClient.c b/admin/Sources/Clients/ogAdmClient/sources/ogAdmClient.c index 080cb4fa..d7c0ceb1 100644 --- a/admin/Sources/Clients/ogAdmClient/sources/ogAdmClient.c +++ b/admin/Sources/Clients/ogAdmClient/sources/ogAdmClient.c @@ -418,7 +418,7 @@ BOOLEAN cuestionCache(char* tam) int cargaPaginaWeb(char *url) { int resul=0; - char* argumentos[3]; + char* argumentos[4]; char modulo[] = "cargaPaginaWeb()"; if(pidbash>0) @@ -428,10 +428,10 @@ int cargaPaginaWeb(char *url) kill(pidbrowser,SIGQUIT); // Destruye el proceso hijo anterior y se queda sólo el actual sprintf(interface,"/opt/opengnsys/bin/browser"); - sprintf(parametros,"%s %s %s","browser","-qws",url); + sprintf(parametros,"browser -qws %s",url); splitCadena(argumentos,parametros,' '); // Crea matriz de los argumentos del scripts - + argumentos[3]=NULL; if((pidbrowser=fork())==0){ /* Proceso hijo que ejecuta el script */ resul=execv(interface,argumentos); |