Справочная информация: я пытаюсь реализовать функциональность связи AS2 используя PHP-код AS2Secure. Когда я пытаюсь отправить сообщение партнеру после подписания и шифрования. Но во время шифрования оно не шифруется, мы отправляем только подписанное сообщение.
Вот функция команды exec:
Код: Выделить всё
openssl smime -encrypt -in "C:\\Users\\Maggy\\AppData\\Local\\Temp\\as2A5B3.tmp" -out "C:\\Users\\Maggy\\AppData\\Local\\Temp\\as2B18B.tmp" -des3 "D:\\as2secure_code_build-0.9.0\\partners\\maggy\\clientcertificate.pem"
Вот код PHP:
Код: Выделить всё
public static function exec($command, $return_output = false){
$output = array();
$return_var = 0;
try{
AS2Log::info(false, 'This is AS2Adapter File and IN EXEC FUNCTION CALLED'.$command);
// AS2Log::info(false, 'INPUT DATA as FOLLOWS'.file_get_contents($input));
exec($command , $output, $return_var);
// proc_open($command , $output, $return_var);
// passthru ("$command , 2>&1");
AS2Log::info(false, 'This is AS2Adapter File and IN EXEC FUNCTION EXECUTED and Result will
be ~~~~~~~~~~~~~~~~~~~~~');
AS2Log::info(false, 'This is AS2Adapter File and IN EXEC FUNCTION COMPLETED
SUCCESSFULLY'.$output[0]);
$line = (isset($output[0])?$output[0]:'Unexpected error in command line : ' . $command);
if ($return_var) throw new Exception($line, (int)$return_var);
}
catch(Exception $e){
throw $e;
}
AS2Log::info(false, 'This is RETURN OUTPUT LOOKS LIKE : '.file_get_contents($output));
AS2Log::info(false, 'This is RETURN VAR LOOKS LIKE : '.file_get_contents($return_var));
if ($return_output){
return $output;
AS2Log::info(false, 'This is AS2Adapter File and FINAL OUTPUT LOOKS LIKE : '.$output);
}
else
return $return_var;
}
Я попробовал shell_exec, и он дает тот же результат.
Я попробовал команду passthru, но она не дала никакого результата.
Я пытаюсь подписать и зашифровать сообщение, но это только подпись сообщения, а не шифрование.
Подробнее здесь: https://stackoverflow.com/questions/791 ... t-return-v