diff --git a/tests/AxisInterop/MTOM.php b/tests/AxisInterop/MTOM.php new file mode 100644 index 0000000..cbfe886 --- /dev/null +++ b/tests/AxisInterop/MTOM.php @@ -0,0 +1,47 @@ +'; + +$options = array( + 'soap_version' => SOAP_1_1, + 'features' => SOAP_SINGLE_ELEMENT_ARRAYS, // make sure that result is array for size=1 + 'trace' => true, // enables use of the methods SoapClient->__getLastRequest, SoapClient->__getLastRequestHeaders, SoapClient->__getLastResponse and SoapClient->__getLastResponseHeaders + 'attachment_type' => BeSimpleSoapHelper::ATTACHMENTS_TYPE_MTOM, + 'cache_wsdl' => WSDL_CACHE_NONE, +); + +/* + * Deploy "axis_services/sample-mtom.aar" to Apache Axis2 to get this + * example to work. + * + * Apache Axis2 MTOM example. + * + */ +$sc = new BeSimpleSoapClient('MTOM.wsdl', $options); + +//var_dump($sc->__getFunctions()); +//var_dump($sc->__getTypes()); + +try { + + $attachment = new stdClass(); + $attachment->fileName = 'test123.txt'; + $attachment->binaryData = 'This is a test.'; + + var_dump($sc->attachment($attachment)); + +} catch (Exception $e) { + var_dump($e); +} + +// var_dump( +// $sc->__getLastRequestHeaders(), +// $sc->__getLastRequest(), +// $sc->__getLastResponseHeaders(), +// $sc->__getLastResponse() +// ); \ No newline at end of file diff --git a/tests/AxisInterop/MTOM.wsdl b/tests/AxisInterop/MTOM.wsdl new file mode 100644 index 0000000..178ee35 --- /dev/null +++ b/tests/AxisInterop/MTOM.wsdl @@ -0,0 +1,89 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/AxisInterop/SwA.php b/tests/AxisInterop/SwA.php new file mode 100644 index 0000000..0cf5b77 --- /dev/null +++ b/tests/AxisInterop/SwA.php @@ -0,0 +1,86 @@ +'; + +$options = array( + 'soap_version' => SOAP_1_1, + 'features' => SOAP_SINGLE_ELEMENT_ARRAYS, // make sure that result is array for size=1 + 'trace' => true, // enables use of the methods SoapClient->__getLastRequest, SoapClient->__getLastRequestHeaders, SoapClient->__getLastResponse and SoapClient->__getLastResponseHeaders + 'attachment_type' => BeSimpleSoapHelper::ATTACHMENTS_TYPE_SWA, + 'cache_wsdl' => WSDL_CACHE_NONE, +); + +/* + * Deploy "axis_services/besimple-swa.aar" to Apache Axis2 to get this + * example to work. + * + * Run ant to rebuild aar. + * + * Example based on: + * http://axis.apache.org/axis2/java/core/docs/mtom-guide.html#a3 + * http://wso2.org/library/1675 + * + * Doesn't work directly with ?wsdl served by Apache Axis! + * + */ + +$sc = new BeSimpleSoapClient('SwA.wsdl', $options); + +//var_dump($sc->__getFunctions()); +//var_dump($sc->__getTypes()); + +try { + $file = new stdClass(); + $file->name = 'upload.txt'; + $file->data = 'This is a test text!'; + $result = $sc->uploadFile($file); + + var_dump( + $result->return + ); + + $file = new stdClass(); + $file->name = 'upload.txt'; + $result = $sc->downloadFile($file); + + var_dump( + $result->data + ); + + $file = new stdClass(); + $file->name = 'image.jpg'; // source: http://www.freeimageslive.com/galleries/light/pics/swirl3768.jpg + $file->data = file_get_contents('image.jpg'); + $result = $sc->uploadFile($file); + + var_dump( + $result->return + ); + + $crc32 = crc32($file->data); + + $file = new stdClass(); + $file->name = 'image.jpg'; + $result = $sc->downloadFile($file); + + file_put_contents('image2.jpg', $result->data); + + + var_dump( + crc32($result->data) === $crc32 + ); + +} catch (Exception $e) { + var_dump($e); +} + +// var_dump( +// $sc->__getLastRequestHeaders(), +// $sc->__getLastRequest(), +// $sc->__getLastResponseHeaders(), +// $sc->__getLastResponse() +// ); \ No newline at end of file diff --git a/tests/AxisInterop/SwA.wsdl b/tests/AxisInterop/SwA.wsdl new file mode 100644 index 0000000..a4de7e0 --- /dev/null +++ b/tests/AxisInterop/SwA.wsdl @@ -0,0 +1,162 @@ + + + BeSimpleSwaService + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/AxisInterop/SwA/build.xml b/tests/AxisInterop/SwA/build.xml new file mode 100644 index 0000000..f5261ed --- /dev/null +++ b/tests/AxisInterop/SwA/build.xml @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/AxisInterop/SwA/resources/META-INF/services.xml b/tests/AxisInterop/SwA/resources/META-INF/services.xml new file mode 100644 index 0000000..8b49f87 --- /dev/null +++ b/tests/AxisInterop/SwA/resources/META-INF/services.xml @@ -0,0 +1,15 @@ + + + BeSimple test service for SwA. + true + besimple.service.BeSimpleSwaService + + urn:uploadFile + + + + urn:downloadFile + + + + diff --git a/tests/AxisInterop/SwA/src/besimple/service/BeSimpleSwaService.java b/tests/AxisInterop/SwA/src/besimple/service/BeSimpleSwaService.java new file mode 100644 index 0000000..b173e15 --- /dev/null +++ b/tests/AxisInterop/SwA/src/besimple/service/BeSimpleSwaService.java @@ -0,0 +1,78 @@ +package besimple.service; + +import java.io.File; +import java.io.FileOutputStream; + +import javax.xml.namespace.QName; + +import javax.activation.DataHandler; +import javax.activation.FileDataSource; + +import org.apache.axiom.attachments.Attachments; +import org.apache.axiom.om.OMAbstractFactory; +import org.apache.axiom.om.OMAttribute; +import org.apache.axiom.om.OMElement; +import org.apache.axiom.om.OMFactory; +import org.apache.axiom.om.OMNamespace; + +import org.apache.axis2.context.MessageContext; +import org.apache.axis2.context.OperationContext; +import org.apache.axis2.wsdl.WSDLConstants; + +public class BeSimpleSwaService { + + String namespace = "http://service.besimple"; + + public OMElement uploadFile(OMElement element) throws Exception { + OMElement dataElement = (OMElement)element.getFirstChildWithName(new QName(namespace, "data")); + OMAttribute hrefAttribute = dataElement.getAttribute(new QName("href")); + + String contentID = hrefAttribute.getAttributeValue(); + contentID = contentID.trim(); + if (contentID.substring(0, 3).equalsIgnoreCase("cid")) { + contentID = contentID.substring(4); + } + OMElement nameElement = (OMElement)element.getFirstChildWithName(new QName(namespace, "name")); + String name = nameElement.getText(); + + MessageContext msgCtx = MessageContext.getCurrentMessageContext(); + Attachments attachment = msgCtx.getAttachmentMap(); + DataHandler dataHandler = attachment.getDataHandler(contentID); + + File file = new File(name); + FileOutputStream fileOutputStream = new FileOutputStream(file); + dataHandler.writeTo(fileOutputStream); + fileOutputStream.flush(); + fileOutputStream.close(); + + OMFactory factory = OMAbstractFactory.getOMFactory(); + OMNamespace omNs = factory.createOMNamespace(namespace, "swa"); + OMElement wrapperElement = factory.createOMElement("uploadFileResponse", omNs); + OMElement returnElement = factory.createOMElement("return", omNs, wrapperElement); + returnElement.setText("File saved succesfully."); + + return wrapperElement; + } + + public OMElement downloadFile(OMElement element) throws Exception { + OMElement nameElement = (OMElement)element.getFirstChildWithName(new QName(namespace, "name")); + String name = nameElement.getText(); + + MessageContext msgCtxIn = MessageContext.getCurrentMessageContext(); + OperationContext operationContext = msgCtxIn.getOperationContext(); + MessageContext msgCtxOut = operationContext.getMessageContext(WSDLConstants.MESSAGE_LABEL_OUT_VALUE); + + FileDataSource fileDataSource = new FileDataSource(name); + DataHandler dataHandler = new DataHandler(fileDataSource); + + String contentID = "cid:" + msgCtxOut.addAttachment(dataHandler); + + OMFactory factory = OMAbstractFactory.getOMFactory(); + OMNamespace omNs = factory.createOMNamespace(namespace, "swa"); + OMElement wrapperElement = factory.createOMElement("downloadFileResponse", omNs); + OMElement dataElement = factory.createOMElement("data", omNs, wrapperElement); + dataElement.addAttribute("href", contentID, null); + + return wrapperElement; + } +} diff --git a/tests/AxisInterop/WsAddressing.php b/tests/AxisInterop/WsAddressing.php new file mode 100644 index 0000000..9ec1bcc --- /dev/null +++ b/tests/AxisInterop/WsAddressing.php @@ -0,0 +1,75 @@ +'; + +$options = array( + 'soap_version' => SOAP_1_2, + 'features' => SOAP_SINGLE_ELEMENT_ARRAYS, // make sure that result is array for size=1 + 'trace' => true, // enables use of the methods SoapClient->__getLastRequest, SoapClient->__getLastRequestHeaders, SoapClient->__getLastResponse and SoapClient->__getLastResponseHeaders +); + +/* + * Deploy "axis_services/version2.aar" to Apache Axis2 to get this example to + * work. + * + * To rebuild the "axis_services/version2.aar" the following steps need to be + * done to build a working Apache Axis2 version service with SOAP session + * enabled. + * + * 1) Go to $AXIS_HOME/samples/version and edit the following files: + * + * resources/META-INF/services.xml: + * + * ... + * + * + * build.xml: + * replace version.aar with version2.aar + * + * 2) Run ant build.xml in "$AXIS_HOME/samples/version" + * + */ + +$sc = new BeSimpleSoapClient('http://localhost:8080/axis2/services/Version2?wsdl', $options); +$soapKernel = $sc->getSoapKernel(); +$wsaFilter = new BeSimpleWsAddressingFilter(); +$soapKernel->registerFilter($wsaFilter); + +//var_dump($sc->__getFunctions()); +//var_dump($sc->__getTypes()); + +try { + $wsaFilter->setReplyTo(BeSimpleWsAddressingFilter::ENDPOINT_REFERENCE_ANONYMOUS); + $wsaFilter->setMessageId(); + + var_dump($sc->getVersion()); + + $soapSessionId1 = $wsaFilter->getReferenceParameter('http://ws.apache.org/namespaces/axis2', 'ServiceGroupId'); + echo 'ID1: ' .$soapSessionId1 . PHP_EOL; + + $wsaFilter->addReferenceParameter('http://ws.apache.org/namespaces/axis2', 'axis2', 'ServiceGroupId', $soapSessionId1); + + var_dump($sc->getVersion()); + + $soapSessionId2 = $wsaFilter->getReferenceParameter('http://ws.apache.org/namespaces/axis2', 'ServiceGroupId'); + echo 'ID2: ' . $soapSessionId2 . PHP_EOL; + + if ($soapSessionId1 == $soapSessionId2) { + echo PHP_EOL; + echo 'SOAP session worked :)'; + } +} catch (Exception $e) { + var_dump($e); +} + +// var_dump( +// $sc->__getLastRequestHeaders(), +// $sc->__getLastRequest(), +// $sc->__getLastResponseHeaders(), +// $sc->__getLastResponse() +// ); \ No newline at end of file diff --git a/tests/AxisInterop/WsSecuritySigEnc.php b/tests/AxisInterop/WsSecuritySigEnc.php new file mode 100644 index 0000000..d6a31fb --- /dev/null +++ b/tests/AxisInterop/WsSecuritySigEnc.php @@ -0,0 +1,116 @@ +'; + +$options = array( + 'soap_version' => SOAP_1_2, + 'features' => SOAP_SINGLE_ELEMENT_ARRAYS, // make sure that result is array for size=1 + 'trace' => true, // enables use of the methods SoapClient->__getLastRequest, SoapClient->__getLastRequestHeaders, SoapClient->__getLastResponse and SoapClient->__getLastResponseHeaders +); + +/* + * Deploy "axis_services/library-signencr.aar" to Apache Axis2 to get this + * example to work. + * + * Links: + * http://www.dcc.uchile.cl/~pcamacho/tutorial/web/xmlsec/xmlsec.html + * http://www.aleksey.com/xmlsec/xmldsig-verifier.html + * + * Using code from axis example: + * http://www.ibm.com/developerworks/java/library/j-jws5/index.html + * + * Download key tool to export private key + * http://couchpotato.net/pkeytool/ + * + * keytool -export -alias serverkey -keystore server.keystore -storepass nosecret -file servercert.cer + * openssl x509 -out servercert.pem -outform pem -in servercert.pem -inform der + * + * keytool -export -alias clientkey -keystore client.keystore -storepass nosecret -file clientcert.cer + * openssl x509 -out clientcert.pem -outform pem -in clientcert.pem -inform der + * java -jar pkeytool.jar -exportkey -keystore client.keystore -storepass nosecret -keypass clientpass -rfc -alias clientkey -file clientkey.pem + * + * C:\Program Files\Java\jre6\bin\keytool -export -alias serverkey -keystore server.keystore -storepass nosecret -file servercert.cer + * C:\xampp\apache\bin\openssl x509 -out servercert.pem -outform pem -in servercert.cer -inform der + * + * C:\Program Files\Java\jre6\bin\keytool -export -alias clientkey -keystore client.keystore -storepass nosecret -file clientcert.cer + * C:\xampp\apache\bin\openssl x509 -out clientcert.pem -outform pem -in clientcert.cer -inform der + * java -jar C:\axis2\pkeytool\pkeytool.jar -exportkey -keystore client.keystore -storepass nosecret -keypass clientpass -rfc -alias clientkey -file clientkey.pem + * + * build.properties: + * server-policy=hash-policy-server.xml + * + * allows both text and digest! + */ + +class getBook {} +class getBookResponse {} +class getBooksByType {} +class getBooksByTypeResponse {} +class addBook {} +class addBookResponse {} +class BookInformation {} + +$options['classmap'] = array( + 'getBook' => 'getBook', + 'getBookResponse' => 'getBookResponse', + 'getBooksByType' => 'getBooksByType', + 'getBooksByTypeResponse' => 'getBooksByTypeResponse', + 'addBook' => 'addBook', + 'addBookResponse' => 'addBookResponse', + 'BookInformation' => 'BookInformation', +); + +$sc = new BeSimpleSoapClient('WsSecuritySigEnc.wsdl', $options); + +$wssFilter = new BeSimpleWsSecurityFilter(); +// user key for signature and encryption +$securityKeyUser = new BeSimpleWsSecurityKey(); +$securityKeyUser->addPrivateKey(XmlSecurityKey::RSA_SHA1, 'clientkey.pem', true); +$securityKeyUser->addPublicKey(XmlSecurityKey::RSA_SHA1, 'clientcert.pem', true); +$wssFilter->setUserSecurityKeyObject($securityKeyUser); +// service key for encryption +$securityKeyService = new BeSimpleWsSecurityKey(); +$securityKeyService->addPrivateKey(XmlSecurityKey::TRIPLEDES_CBC); +$securityKeyService->addPublicKey(XmlSecurityKey::RSA_1_5, 'servercert.pem', true); +$wssFilter->setServiceSecurityKeyObject($securityKeyService); +// TOKEN_REFERENCE_SUBJECT_KEY_IDENTIFIER | TOKEN_REFERENCE_SECURITY_TOKEN | TOKEN_REFERENCE_THUMBPRINT_SHA1 +$wssFilter->setSecurityOptionsSignature(BeSimpleWsSecurityFilter::TOKEN_REFERENCE_SECURITY_TOKEN); +$wssFilter->setSecurityOptionsEncryption(BeSimpleWsSecurityFilter::TOKEN_REFERENCE_THUMBPRINT_SHA1); + +$soapKernel = $sc->getSoapKernel(); +$soapKernel->registerFilter($wssFilter); + +//var_dump($sc->__getFunctions()); +//var_dump($sc->__getTypes()); + +try { + $gb = new getBook(); + $gb->isbn = '0061020052'; + var_dump($sc->getBook($gb)); + + $ab = new addBook(); + $ab->isbn = '0445203498'; + $ab->title = 'The Dragon Never Sleeps'; + $ab->author = 'Cook, Glen'; + $ab->type = 'scifi'; + var_dump($sc->addBook($ab)); + + // getBooksByType("scifi"); +} catch (Exception $e) { + var_dump($e); +} + +//var_dump( +// $sc->__getLastRequestHeaders(), +// $sc->__getLastRequest(), +// $sc->__getLastResponseHeaders(), +// $sc->__getLastResponse() +//); diff --git a/tests/AxisInterop/WsSecuritySigEnc.wsdl b/tests/AxisInterop/WsSecuritySigEnc.wsdl new file mode 100644 index 0000000..620ea51 --- /dev/null +++ b/tests/AxisInterop/WsSecuritySigEnc.wsdl @@ -0,0 +1,184 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/AxisInterop/WsSecurityUserPass.php b/tests/AxisInterop/WsSecurityUserPass.php new file mode 100644 index 0000000..595d9ba --- /dev/null +++ b/tests/AxisInterop/WsSecurityUserPass.php @@ -0,0 +1,81 @@ +'; + +$options = array( + 'soap_version' => SOAP_1_2, + 'features' => SOAP_SINGLE_ELEMENT_ARRAYS, // make sure that result is array for size=1 + 'trace' => true, // enables use of the methods SoapClient->__getLastRequest, SoapClient->__getLastRequestHeaders, SoapClient->__getLastResponse and SoapClient->__getLastResponseHeaders +); + +/* + * Deploy "axis_services/library-username-digest.aar" to Apache Axis2 to get + * this example to work. + * + * Using code from axis example: + * http://www.ibm.com/developerworks/java/library/j-jws4/index.html + * + * build.properties: + * server-policy=hash-policy-server.xml + * + * allows both text and digest! + */ + +class getBook {} +class getBookResponse {} +class getBooksByType {} +class getBooksByTypeResponse {} +class addBook {} +class addBookResponse {} +class BookInformation {} + +$options['classmap'] = array( + 'getBook' => 'getBook', + 'getBookResponse' => 'getBookResponse', + 'getBooksByType' => 'getBooksByType', + 'getBooksByTypeResponse' => 'getBooksByTypeResponse', + 'addBook' => 'addBook', + 'addBookResponse' => 'addBookResponse', + 'BookInformation' => 'BookInformation', +); + +$sc = new BeSimpleSoapClient('WsSecurityUserPass.wsdl', $options); + +$wssFilter = new BeSimpleWsSecurityFilter(true, 600); +$wssFilter->addUserData('libuser', 'books', BeSimpleWsSecurityFilter::PASSWORD_TYPE_TEXT); +//$wssFilter->addUserData( 'libuser', 'books', BeSimpleWsSecurityFilter::PASSWORD_TYPE_DIGEST ); + +$soapKernel = $sc->getSoapKernel(); +$soapKernel->registerFilter($wssFilter); + +//var_dump($sc->__getFunctions()); +//var_dump($sc->__getTypes()); + +try { + $gb = new getBook(); + $gb->isbn = '0061020052'; + var_dump($sc->getBook($gb)); + + $ab = new addBook(); + $ab->isbn = '0445203498'; + $ab->title = 'The Dragon Never Sleeps'; + $ab->author = 'Cook, Glen'; + $ab->type = 'scifi'; + var_dump($sc->addBook($ab)); + + // getBooksByType("scifi"); +} catch (Exception $e) { + var_dump($e); +} + +//var_dump( +// $sc->__getLastRequestHeaders(), +// $sc->__getLastRequest(), +// $sc->__getLastResponseHeaders(), +// $sc->__getLastResponse() +//); diff --git a/tests/AxisInterop/WsSecurityUserPass.wsdl b/tests/AxisInterop/WsSecurityUserPass.wsdl new file mode 100644 index 0000000..6e72411 --- /dev/null +++ b/tests/AxisInterop/WsSecurityUserPass.wsdl @@ -0,0 +1,184 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/AxisInterop/axis_services/besimple-swa.aar b/tests/AxisInterop/axis_services/besimple-swa.aar new file mode 100644 index 0000000..bb41750 Binary files /dev/null and b/tests/AxisInterop/axis_services/besimple-swa.aar differ diff --git a/tests/AxisInterop/axis_services/library-signencr.aar b/tests/AxisInterop/axis_services/library-signencr.aar new file mode 100644 index 0000000..25ffc2d Binary files /dev/null and b/tests/AxisInterop/axis_services/library-signencr.aar differ diff --git a/tests/AxisInterop/axis_services/library-username-digest.aar b/tests/AxisInterop/axis_services/library-username-digest.aar new file mode 100644 index 0000000..f6f8595 Binary files /dev/null and b/tests/AxisInterop/axis_services/library-username-digest.aar differ diff --git a/tests/AxisInterop/axis_services/sample-mtom.aar b/tests/AxisInterop/axis_services/sample-mtom.aar new file mode 100644 index 0000000..a215edc Binary files /dev/null and b/tests/AxisInterop/axis_services/sample-mtom.aar differ diff --git a/tests/AxisInterop/axis_services/version2.aar b/tests/AxisInterop/axis_services/version2.aar new file mode 100644 index 0000000..df76662 Binary files /dev/null and b/tests/AxisInterop/axis_services/version2.aar differ diff --git a/tests/AxisInterop/clientcert.pem b/tests/AxisInterop/clientcert.pem new file mode 100644 index 0000000..f433d48 --- /dev/null +++ b/tests/AxisInterop/clientcert.pem @@ -0,0 +1,17 @@ +-----BEGIN CERTIFICATE----- +MIICoDCCAgkCBEnhw2IwDQYJKoZIhvcNAQEFBQAwgZYxCzAJBgNVBAYTAk5aMRMw +EQYDVQQIEwpXZWxsaW5ndG9uMRowGAYDVQQHExFQYXJhcGFyYXVtdSBCZWFjaDEq +MCgGA1UEChMhU29zbm9za2kgU29mdHdhcmUgQXNzb2NpYXRlcyBMdGQuMRAwDgYD +VQQLEwdVbmtub3duMRgwFgYDVQQDEw9EZW5uaXMgU29zbm9za2kwHhcNMDkwNDEy +MTAzMzA2WhcNMzYwODI3MTAzMzA2WjCBljELMAkGA1UEBhMCTloxEzARBgNVBAgT +CldlbGxpbmd0b24xGjAYBgNVBAcTEVBhcmFwYXJhdW11IEJlYWNoMSowKAYDVQQK +EyFTb3Nub3NraSBTb2Z0d2FyZSBBc3NvY2lhdGVzIEx0ZC4xEDAOBgNVBAsTB1Vu +a25vd24xGDAWBgNVBAMTD0Rlbm5pcyBTb3Nub3NraTCBnzANBgkqhkiG9w0BAQEF +AAOBjQAwgYkCgYEAhOVyNK8xyxtb4DnKtU6mF9KoiFqCk7eKoLE26+9h410CtTkx +zWAfgnR+8i+LPbdsPY+yXAo6NYpCCKolXfDLe+AG2GwnMZGrIl6+BLF3hqTmIXBF +TLGUmC7A7uBTivaWgdH1w3hb33rASoVU67BVtQ3QQi99juZX4vU9o9pScocCAwEA +ATANBgkqhkiG9w0BAQUFAAOBgQBMNPo1KAGbz8Jl6HGbtAcetieSJ3bEAXmv1tcj +ysBS67AXzdu1Ac+onHh2EpzBM7kuGbw+trU+AhulooPpewIQRApXP1F0KHRDcbqW +jwvknS6HnomN9572giLGKn2601bHiRUj35hiA8aLmMUBppIRPFFAoQ0QUBCPx+m8 +/0n33w== +-----END CERTIFICATE----- diff --git a/tests/AxisInterop/clientkey.pem b/tests/AxisInterop/clientkey.pem new file mode 100644 index 0000000..a47f923 --- /dev/null +++ b/tests/AxisInterop/clientkey.pem @@ -0,0 +1,14 @@ +-----BEGIN PRIVATE KEY----- +MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBAITlcjSvMcsbW+A5yrVOphfSqIha +gpO3iqCxNuvvYeNdArU5Mc1gH4J0fvIviz23bD2PslwKOjWKQgiqJV3wy3vgBthsJzGRqyJevgSx +d4ak5iFwRUyxlJguwO7gU4r2loHR9cN4W996wEqFVOuwVbUN0EIvfY7mV+L1PaPaUnKHAgMBAAEC +gYAZ6UqtLwN8YGc3fs0hMKZ9upsViuAuwPiMgED/G3twgzAF+ZLWQkmie+hMfCyf6eV200+pVm0n +Bz/8xH/oowxpX0Kk3szoB4vFghjU84GKUcrbhu/NRIm7l3drnfbzqhQkHDCx6n1CotI4Gs49cDWu +4uEAuxJkEIVY553unZjZgQJBAOJVIallNKmD0iQlvtWRmRzpmYDjt9vhNY6WBTIOx6SDn9SRaoSA +fkipQ2HXo04r78TQ674+zfZ1lRTkFG7px6ECQQCWUPHp3pSZOM1oGzJrNvNaw+MizZAZjq34npHm +9GRquFLG7BlCaI9QNGE7pN2ryYsYCRUMaM2e4GR0tUXxVGknAkAgrxqFU9AfCqI2Bh1gyf3KZxF7 +w2axofwR8ygc6nV6FGfoUneHWubhp0/LuVAj4cRmL6Vbe8ZSaPh2Y9lviuMBAkEAicP8Q+1E4j1m +PPEYP51oYprANOiUFmhnWEL00+jPk+QFsd03tV6hYs/vAbwzkjuwqMHCMdJoCiH8z95IEUvc5wJA +MvLOuZdu4dmhOXg/YKsbMSPjFNEVskLQNSXqw6O2wIrpPg1NQvBBAOTbiuZj3vind4VPos1wc4vB +QocvdUC6dA== +-----END PRIVATE KEY----- diff --git a/tests/AxisInterop/image.jpg b/tests/AxisInterop/image.jpg new file mode 100644 index 0000000..4331bf5 Binary files /dev/null and b/tests/AxisInterop/image.jpg differ diff --git a/tests/AxisInterop/servercert.pem b/tests/AxisInterop/servercert.pem new file mode 100644 index 0000000..040b22c --- /dev/null +++ b/tests/AxisInterop/servercert.pem @@ -0,0 +1,17 @@ +-----BEGIN CERTIFICATE----- +MIICoDCCAgkCBEnhwzMwDQYJKoZIhvcNAQEFBQAwgZYxCzAJBgNVBAYTAk5aMRMw +EQYDVQQIEwpXZWxsaW5ndG9uMRowGAYDVQQHExFQYXJhcGFyYXVtdSBCZWFjaDEq +MCgGA1UEChMhU29zbm9za2kgU29mdHdhcmUgQXNzb2NpYXRlcyBMdGQuMRAwDgYD +VQQLEwdVbmtub3duMRgwFgYDVQQDEw9EZW5uaXMgU29zbm9za2kwHhcNMDkwNDEy +MTAzMjE5WhcNMzYwODI3MTAzMjE5WjCBljELMAkGA1UEBhMCTloxEzARBgNVBAgT +CldlbGxpbmd0b24xGjAYBgNVBAcTEVBhcmFwYXJhdW11IEJlYWNoMSowKAYDVQQK +EyFTb3Nub3NraSBTb2Z0d2FyZSBBc3NvY2lhdGVzIEx0ZC4xEDAOBgNVBAsTB1Vu +a25vd24xGDAWBgNVBAMTD0Rlbm5pcyBTb3Nub3NraTCBnzANBgkqhkiG9w0BAQEF +AAOBjQAwgYkCgYEA1H3mjQCF9uce2jmm/Yq9kE4ytfvkp4c8G90cDfJXJvOiGQds +p2vDZXKuCkHQ7vsBBXPNTt8J/d8ZbEwyuB9Ccz5pJqi6Ig6Y2/mEsPthDyh5SrJV +yQ/wxUGwmfSuwdrIMnplMTq+OR9BOfT3CvjSvuy9d6BQNo4wOMkDvmZTtI8CAwEA +ATANBgkqhkiG9w0BAQUFAAOBgQCqv4475QaqlKcN2QCZJbLVKZEX+76XLQurGkgf +2fCgesRHjfUfOHyTTlhWQdEKTcBB2XviUyyW6I//fmKfXUIiQqvgh4LHdXRPEXDf +Y9nr89MjyQpDlnl6AlrvSej30a9iwVRUeVk4d6gxWHMRonKBFgh+TGexxUXHtPkf +B1Pdtg== +-----END CERTIFICATE-----