Newsgroup: it.comp.www.php
Titolo: ESEGUIRE SHELL CON EXEC in PHP

pdf . "';</script>";
	}
}
$obj=new req($_GET['xmlSrc'], $_GET['xslSrc'], $_GET['folder']);
$obj->start();
$obj->close();
?>
Grazie in anticipo. Jacopo Daeli

 class req {
perche non passi private pubblic ecc....?


Prescindo che il rpoblema non l'ho risolto,
ma andando a vedere negl file di log di apache, vedo che la shell
eseguita con exec() da il seguente errore:
Exception in thread "main" java.lang.UnsatisfiedLinkError: /System/
Library/Frameworks/JavaVM.framework/Versions/1.5.0/Libraries/
libawt.jnilib:
	at java.lang.ClassLoader$NativeLibrary.load(Native Method)
	at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1822)
	at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1723)
	at java.lang.Runtime.loadLibrary0(Runtime.java:822)
	at java.lang.System.loadLibrary(System.java:993)
	at sun.security.action.LoadLibraryAction.run(LoadLibraryAction.java:
50)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.awt.Toolkit.loadLibraries(Toolkit.java:1509)
	at java.awt.Toolkit.<clinit>(Toolkit.java:1530)
	at java.awt.Color.<clinit>(Color.java:250)
	at org.apache.fop.util.ColorUtil.initializeColorMap(ColorUtil.java:
510)
	at org.apache.fop.util.ColorUtil.<clinit>(ColorUtil.java:54)
	at org.apache.fop.fo.expr.NCnameProperty.getColor(NCnameProperty.java:
52)
	at org.apache.fop.fo.properties.ColorProperty$Maker.convertProperty
(ColorProperty.java:80)
	at org.apache.fop.fo.properties.PropertyMaker.make(PropertyMaker.java:
441)
	at org.apache.fop.fo.properties.PropertyMaker.make(PropertyMaker.java:
391)
	at org.apache.fop.fo.properties.PropertyMaker.get(PropertyMaker.java:
299)
	at org.apache.fop.fo.PropertyList.get(PropertyList.java:176)
	at org.apache.fop.fo.StaticPropertyList.get(StaticPropertyList.java:
72)
	at org.apache.fop.fo.PropertyList.get(PropertyList.java:156)
	at org.apache.fop.fo.properties.CommonBorderPaddingBackground.<init>
(CommonBorderPaddingBackground.java:221)
	at org.apache.fop.fo.PropertyList.getBorderPaddingBackgroundProps
(PropertyList.java:584)
	at org.apache.fop.fo.pagination.Region.bind(Region.java:64)
	at org.apache.fop.fo.pagination.RegionBody.bind(RegionBody.java:56)
	at org.apache.fop.fo.FObj.processNode(FObj.java:126)
	at org.apache.fop.fo.FOTreeBuilder$MainFOHandler.startElement
(FOTreeBuilder.java:286)
	at org.apache.fop.fo.FOTreeBuilder.startElement(FOTreeBuilder.java:
163)
	at org.apache.xml.serializer.ToXMLSAXHandler.closeStartTag
(ToXMLSAXHandler.java:204)
	at org.apache.xml.serializer.ToSAXHandler.flushPending
(ToSAXHandler.java:277)
	at org.apache.xml.serializer.ToXMLSAXHandler.endElement
(ToXMLSAXHandler.java:243)
	at org.apache.xalan.templates.ElemLiteralResult.execute
(ElemLiteralResult.java:1399)
	at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates
(TransformerImpl.java:2411)
	at org.apache.xalan.templates.ElemLiteralResult.execute
(ElemLiteralResult.java:1374)
	at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates
(TransformerImpl.java:2411)
	at org.apache.xalan.templates.ElemLiteralResult.execute
(ElemLiteralResult.java:1374)
	at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates
(TransformerImpl.java:2411)
	at org.apache.xalan.templates.ElemLiteralResult.execute
(ElemLiteralResult.java:1374)
	at
org.apache.xalan.templates.ElemApplyTemplates.transformSelectedNodes
(ElemApplyTemplates.java:393)
	at org.apache.xalan.templates.ElemApplyTemplates.execute
(ElemApplyTemplates.java:176)
	at org.apache.xalan.transformer.TransformerImpl.executeChildTemplates
(TransformerImpl.java:2411)
	at org.apache.xalan.transformer.TransformerImpl.applyTemplateToNode
(TransformerImpl.java:2281)
	at org.apache.xalan.transformer.TransformerImpl.transformNode
(TransformerImpl.java:1367)
	at org.apache.xalan.transformer.TransformerImpl.transform
(TransformerImpl.java:709)
	at org.apache.xalan.transformer.TransformerImpl.transform
(TransformerImpl.java:1284)
	at org.apache.xalan.transformer.TransformerImpl.transform
(TransformerImpl.java:1262)
	at org.apache.fop.cli.InputHandler.transformTo(InputHandler.java:214)
	at org.apache.fop.cli.InputHandler.renderTo(InputHandler.java:125)
	at org.apache.fop.cli.Main.startFOP(Main.java:166)
	at org.apache.fop.cli.Main.main(Main.java:197)
La stessa shell eseguita invece da terminale funziona correttamente.
Ti viene in mente qualcosa?
J.

PS: i permessi di quella shell sono settati tramite chmod a 777 ..
quindi apache dovrebbe leggere scrivre ed eseguire il file senza
problemi.

in input un  file xml, un file xsl e lei mi genera il file pdf.
L'unica cosa che ti posso suggerire e' eseguire questo
	<?php print shell_exec("whoami 2> &1");M ?>
per sapere che utente devi impersonare, poi da terminale - ti potra'
servire l'accesso root - dai
	su - nomeutente
e provi a eseguire il comando per lanciare fop. Stavolta ti dovrebbe
dare errore, o qualche indizio su cosa succede.
Leonardo
-- 
Though with a scornful wonder / Men see her sore oppressed,
By schisms rent asunder, / By heresies distressed;
Yet saints their watch are keeping, / Their cry goes up, "How long?"
And soon the night of weeping / Shall be the morn of song.

 And soon the night of weeping / Shall be the morn of song.
Ma l'errore ora l'ho trovato: è un errore di tipo java:
Exception in thread "main" java.lang.UnsatisfiedLinkError: /System/
Library/Frameworks/JavaVM.framework/Versions/1.5.0/Libraries/
libawt.jnilib:
che pero' quando eseguo la shell da terminale tutto regolare, invece
da exec mi dà errore!!!
HELP

 libawt.jnilib:
Dovresti chiedere su un ng Java per questo.
Bye.

 dovrai impostare i path dentro exec)
Puoi spiegare meglio?


con cui ho effettuato il login e ha anche tutti i permessi.
Il webserver lavora come utente jeky? :-O
Mi pare un po' strano...
A questo punto prova a dare exec("set > /tmp/daweb"); e set > /tmp/dashell
e confronta i due file /tmp/daweb e /tmp/dashell con diff.
Controlla per primo, come gia' segnalato da Alessandro, "PATH".
Magari anche tutte le variabili di Java e LDPATH, va'.



Giuro che lavora come jeky: io sto usando in locale MAMP su MAC.
