aboutsummaryrefslogtreecommitdiff
path: root/plugin/httpmd5.h
diff options
context:
space:
mode:
Diffstat (limited to 'plugin/httpmd5.h')
-rw-r--r--plugin/httpmd5.h78
1 files changed, 78 insertions, 0 deletions
diff --git a/plugin/httpmd5.h b/plugin/httpmd5.h
new file mode 100644
index 0000000..848604e
--- /dev/null
+++ b/plugin/httpmd5.h
@@ -0,0 +1,78 @@
+/*
+
+httpmd5.h
+
+gSOAP HTTP Content-MD5 digest plugin.
+
+Usage (both client and server, see httpmd5test.h/.c for example):
+soap_register_plugin(&soap, http_md5);
+This enables HTTP MD5 checksum generation and checking for SOAP/XML messages
+WITHOUT attachments.
+
+Compile with -DWITH_OPENSSL
+Link with OpenSSL (for md5evp.c), httpmd5.c, and md5evp.c
+
+gSOAP XML Web services tools
+Copyright (C) 2000-2005, Robert van Engelen, Genivia Inc., All Rights Reserved.
+This part of the software is released under one of the following licenses:
+GPL, the gSOAP public license, or Genivia's license for commercial use.
+--------------------------------------------------------------------------------
+gSOAP public license.
+
+The contents of this file are subject to the gSOAP Public License Version 1.3
+(the "License"); you may not use this file except in compliance with the
+License. You may obtain a copy of the License at
+http://www.cs.fsu.edu/~engelen/soaplicense.html
+Software distributed under the License is distributed on an "AS IS" basis,
+WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+for the specific language governing rights and limitations under the License.
+
+The Initial Developer of the Original Code is Robert A. van Engelen.
+Copyright (C) 2000-2005, Robert van Engelen, Genivia, Inc., All Rights Reserved.
+--------------------------------------------------------------------------------
+GPL license.
+
+This program is free software; you can redistribute it and/or modify it under
+the terms of the GNU General Public License as published by the Free Software
+Foundation; either version 2 of the License, or (at your option) any later
+version.
+
+This program is distributed in the hope that it will be useful, but WITHOUT ANY
+WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+PARTICULAR PURPOSE. See the GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License along with
+this program; if not, write to the Free Software Foundation, Inc., 59 Temple
+Place, Suite 330, Boston, MA 02111-1307 USA
+
+Author contact information:
+engelen@genivia.com / engelen@acm.org
+--------------------------------------------------------------------------------
+A commercial use license is available from Genivia, Inc., contact@genivia.com
+--------------------------------------------------------------------------------
+*/
+
+#ifndef HTTPMD5_H
+#define HTTPMD5_H
+
+#include "stdsoap2.h"
+#include "md5evp.h"
+
+#define HTTP_MD5_ID "HTTP-MD5-1.1" /* plugin identification */
+
+extern const char http_md5_id[];
+
+int http_md5(struct soap *soap, struct soap_plugin *p, void *arg);
+
+struct http_md5_data
+{ int (*fposthdr)(struct soap*, const char*, const char*);
+ int (*fparsehdr)(struct soap*, const char*, const char*);
+ int (*fprepareinit)(struct soap*);
+ int (*fpreparesend)(struct soap*, const char*, size_t);
+ int (*fpreparerecv)(struct soap*, const char*, size_t);
+ int (*fdisconnect)(struct soap*);
+ void *context;
+ char digest[16];
+};
+
+#endif