You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by du...@apache.org on 2008/01/09 10:42:50 UTC

svn commit: r610322 - in /webservices/axis2/trunk/c: ./ tools/md5/ tools/md5/include/ tools/md5/src/ tools/md5/test/ tools/md5/test/unit/ util/include/ util/src/ util/test/util/

Author: dushshantha
Date: Wed Jan  9 01:42:48 2008
New Revision: 610322

URL: http://svn.apache.org/viewvc?rev=610322&view=rev
Log:
applied the patch for AXIS2C-887 888 and 892. Thanks Senaka fpr the patch.


Added:
    webservices/axis2/trunk/c/tools/md5/
    webservices/axis2/trunk/c/tools/md5/AUTHORS
    webservices/axis2/trunk/c/tools/md5/COPYING
    webservices/axis2/trunk/c/tools/md5/ChangeLog
    webservices/axis2/trunk/c/tools/md5/INSTALL
    webservices/axis2/trunk/c/tools/md5/LICENSE
    webservices/axis2/trunk/c/tools/md5/Makefile.am
    webservices/axis2/trunk/c/tools/md5/NEWS
    webservices/axis2/trunk/c/tools/md5/README
    webservices/axis2/trunk/c/tools/md5/autogen.sh   (with props)
    webservices/axis2/trunk/c/tools/md5/build.sh
    webservices/axis2/trunk/c/tools/md5/configure.ac
    webservices/axis2/trunk/c/tools/md5/include/
    webservices/axis2/trunk/c/tools/md5/src/
    webservices/axis2/trunk/c/tools/md5/src/Makefile.am
    webservices/axis2/trunk/c/tools/md5/src/md5.c
    webservices/axis2/trunk/c/tools/md5/test/
    webservices/axis2/trunk/c/tools/md5/test/Makefile.am
    webservices/axis2/trunk/c/tools/md5/test/unit/
    webservices/axis2/trunk/c/util/include/axutil_digest_calc.h
    webservices/axis2/trunk/c/util/include/axutil_md5.h
    webservices/axis2/trunk/c/util/src/digest_calc.c
    webservices/axis2/trunk/c/util/src/md5.c
    webservices/axis2/trunk/c/util/test/util/test_md5.c
    webservices/axis2/trunk/c/util/test/util/test_md5.h
Modified:
    webservices/axis2/trunk/c/Makefile.am
    webservices/axis2/trunk/c/configure.ac
    webservices/axis2/trunk/c/util/src/Makefile.am
    webservices/axis2/trunk/c/util/test/util/Makefile.am
    webservices/axis2/trunk/c/util/test/util/test_util.c

Modified: webservices/axis2/trunk/c/Makefile.am
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/Makefile.am?rev=610322&r1=610321&r2=610322&view=diff
==============================================================================
--- webservices/axis2/trunk/c/Makefile.am (original)
+++ webservices/axis2/trunk/c/Makefile.am Wed Jan  9 01:42:48 2008
@@ -8,7 +8,7 @@
 pkgconfigdir = $(libdir)/pkgconfig
 pkgconfig_DATA = axis2c.pc
 
-SUBDIRS = util $(GUTHTHILA_DIR) axiom neethi src $(TESTDIR) include ides tools/tcpmon
+SUBDIRS = util $(GUTHTHILA_DIR) axiom neethi src $(TESTDIR) include ides tools/tcpmon tools/md5
 include_HEADERS=$(top_builddir)/include/*.h
 data_DATA= samples/server/axis2.xml README \
 	INSTALL CREDITS COPYING NEWS NOTICE 

Modified: webservices/axis2/trunk/c/configure.ac
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/configure.ac?rev=610322&r1=610321&r2=610322&view=diff
==============================================================================
--- webservices/axis2/trunk/c/configure.ac (original)
+++ webservices/axis2/trunk/c/configure.ac Wed Jan  9 01:42:48 2008
@@ -414,6 +414,8 @@
     test/core/transport/http/Makefile \
     tools/tcpmon/Makefile \
     tools/tcpmon/src/Makefile \
+    tools/md5/Makefile \
+    tools/md5/src/Makefile \
     ides/Makefile \
     include/Makefile \
     axis2c.pc

Added: webservices/axis2/trunk/c/tools/md5/AUTHORS
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/md5/AUTHORS?rev=610322&view=auto
==============================================================================
    (empty)

Added: webservices/axis2/trunk/c/tools/md5/COPYING
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/md5/COPYING?rev=610322&view=auto
==============================================================================
--- webservices/axis2/trunk/c/tools/md5/COPYING (added)
+++ webservices/axis2/trunk/c/tools/md5/COPYING Wed Jan  9 01:42:48 2008
@@ -0,0 +1,203 @@
+
+                                 Apache License
+                           Version 2.0, January 2004
+                        http://www.apache.org/licenses/
+
+   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+   1. Definitions.
+
+      "License" shall mean the terms and conditions for use, reproduction,
+      and distribution as defined by Sections 1 through 9 of this document.
+
+      "Licensor" shall mean the copyright owner or entity authorized by
+      the copyright owner that is granting the License.
+
+      "Legal Entity" shall mean the union of the acting entity and all
+      other entities that control, are controlled by, or are under common
+      control with that entity. For the purposes of this definition,
+      "control" means (i) the power, direct or indirect, to cause the
+      direction or management of such entity, whether by contract or
+      otherwise, or (ii) ownership of fifty percent (50%) or more of the
+      outstanding shares, or (iii) beneficial ownership of such entity.
+
+      "You" (or "Your") shall mean an individual or Legal Entity
+      exercising permissions granted by this License.
+
+      "Source" form shall mean the preferred form for making modifications,
+      including but not limited to software source code, documentation
+      source, and configuration files.
+
+      "Object" form shall mean any form resulting from mechanical
+      transformation or translation of a Source form, including but
+      not limited to compiled object code, generated documentation,
+      and conversions to other media types.
+
+      "Work" shall mean the work of authorship, whether in Source or
+      Object form, made available under the License, as indicated by a
+      copyright notice that is included in or attached to the work
+      (an example is provided in the Appendix below).
+
+      "Derivative Works" shall mean any work, whether in Source or Object
+      form, that is based on (or derived from) the Work and for which the
+      editorial revisions, annotations, elaborations, or other modifications
+      represent, as a whole, an original work of authorship. For the purposes
+      of this License, Derivative Works shall not include works that remain
+      separable from, or merely link (or bind by name) to the interfaces of,
+      the Work and Derivative Works thereof.
+
+      "Contribution" shall mean any work of authorship, including
+      the original version of the Work and any modifications or additions
+      to that Work or Derivative Works thereof, that is intentionally
+      submitted to Licensor for inclusion in the Work by the copyright owner
+      or by an individual or Legal Entity authorized to submit on behalf of
+      the copyright owner. For the purposes of this definition, "submitted"
+      means any form of electronic, verbal, or written communication sent
+      to the Licensor or its representatives, including but not limited to
+      communication on electronic mailing lists, source code control systems,
+      and issue tracking systems that are managed by, or on behalf of, the
+      Licensor for the purpose of discussing and improving the Work, but
+      excluding communication that is conspicuously marked or otherwise
+      designated in writing by the copyright owner as "Not a Contribution."
+
+      "Contributor" shall mean Licensor and any individual or Legal Entity
+      on behalf of whom a Contribution has been received by Licensor and
+      subsequently incorporated within the Work.
+
+   2. Grant of Copyright License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      copyright license to reproduce, prepare Derivative Works of,
+      publicly display, publicly perform, sublicense, and distribute the
+      Work and such Derivative Works in Source or Object form.
+
+   3. Grant of Patent License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      (except as stated in this section) patent license to make, have made,
+      use, offer to sell, sell, import, and otherwise transfer the Work,
+      where such license applies only to those patent claims licensable
+      by such Contributor that are necessarily infringed by their
+      Contribution(s) alone or by combination of their Contribution(s)
+      with the Work to which such Contribution(s) was submitted. If You
+      institute patent litigation against any entity (including a
+      cross-claim or counterclaim in a lawsuit) alleging that the Work
+      or a Contribution incorporated within the Work constitutes direct
+      or contributory patent infringement, then any patent licenses
+      granted to You under this License for that Work shall terminate
+      as of the date such litigation is filed.
+
+   4. Redistribution. You may reproduce and distribute copies of the
+      Work or Derivative Works thereof in any medium, with or without
+      modifications, and in Source or Object form, provided that You
+      meet the following conditions:
+
+      (a) You must give any other recipients of the Work or
+          Derivative Works a copy of this License; and
+
+      (b) You must cause any modified files to carry prominent notices
+          stating that You changed the files; and
+
+      (c) You must retain, in the Source form of any Derivative Works
+          that You distribute, all copyright, patent, trademark, and
+          attribution notices from the Source form of the Work,
+          excluding those notices that do not pertain to any part of
+          the Derivative Works; and
+
+      (d) If the Work includes a "NOTICE" text file as part of its
+          distribution, then any Derivative Works that You distribute must
+          include a readable copy of the attribution notices contained
+          within such NOTICE file, excluding those notices that do not
+          pertain to any part of the Derivative Works, in at least one
+          of the following places: within a NOTICE text file distributed
+          as part of the Derivative Works; within the Source form or
+          documentation, if provided along with the Derivative Works; or,
+          within a display generated by the Derivative Works, if and
+          wherever such third-party notices normally appear. The contents
+          of the NOTICE file are for informational purposes only and
+          do not modify the License. You may add Your own attribution
+          notices within Derivative Works that You distribute, alongside
+          or as an addendum to the NOTICE text from the Work, provided
+          that such additional attribution notices cannot be construed
+          as modifying the License.
+
+      You may add Your own copyright statement to Your modifications and
+      may provide additional or different license terms and conditions
+      for use, reproduction, or distribution of Your modifications, or
+      for any such Derivative Works as a whole, provided Your use,
+      reproduction, and distribution of the Work otherwise complies with
+      the conditions stated in this License.
+
+   5. Submission of Contributions. Unless You explicitly state otherwise,
+      any Contribution intentionally submitted for inclusion in the Work
+      by You to the Licensor shall be under the terms and conditions of
+      this License, without any additional terms or conditions.
+      Notwithstanding the above, nothing herein shall supersede or modify
+      the terms of any separate license agreement you may have executed
+      with Licensor regarding such Contributions.
+
+   6. Trademarks. This License does not grant permission to use the trade
+      names, trademarks, service marks, or product names of the Licensor,
+      except as required for reasonable and customary use in describing the
+      origin of the Work and reproducing the content of the NOTICE file.
+
+   7. Disclaimer of Warranty. Unless required by applicable law or
+      agreed to in writing, Licensor provides the Work (and each
+      Contributor provides its Contributions) on an "AS IS" BASIS,
+      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+      implied, including, without limitation, any warranties or conditions
+      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+      PARTICULAR PURPOSE. You are solely responsible for determining the
+      appropriateness of using or redistributing the Work and assume any
+      risks associated with Your exercise of permissions under this License.
+
+   8. Limitation of Liability. In no event and under no legal theory,
+      whether in tort (including negligence), contract, or otherwise,
+      unless required by applicable law (such as deliberate and grossly
+      negligent acts) or agreed to in writing, shall any Contributor be
+      liable to You for damages, including any direct, indirect, special,
+      incidental, or consequential damages of any character arising as a
+      result of this License or out of the use or inability to use the
+      Work (including but not limited to damages for loss of goodwill,
+      work stoppage, computer failure or malfunction, or any and all
+      other commercial damages or losses), even if such Contributor
+      has been advised of the possibility of such damages.
+
+   9. Accepting Warranty or Additional Liability. While redistributing
+      the Work or Derivative Works thereof, You may choose to offer,
+      and charge a fee for, acceptance of support, warranty, indemnity,
+      or other liability obligations and/or rights consistent with this
+      License. However, in accepting such obligations, You may act only
+      on Your own behalf and on Your sole responsibility, not on behalf
+      of any other Contributor, and only if You agree to indemnify,
+      defend, and hold each Contributor harmless for any liability
+      incurred by, or claims asserted against, such Contributor by reason
+      of your accepting any such warranty or additional liability.
+
+   END OF TERMS AND CONDITIONS
+
+   APPENDIX: How to apply the Apache License to your work.
+
+      To apply the Apache License to your work, attach the following
+      boilerplate notice, with the fields enclosed by brackets "[]"
+      replaced with your own identifying information. (Don't include
+      the brackets!)  The text should be enclosed in the appropriate
+      comment syntax for the file format. We also recommend that a
+      file or class name and description of purpose be included on the
+      same "printed page" as the copyright notice for easier
+      identification within third-party archives.
+
+   Copyright [yyyy] [name of copyright owner]
+
+   Licensed under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+

Added: webservices/axis2/trunk/c/tools/md5/ChangeLog
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/md5/ChangeLog?rev=610322&view=auto
==============================================================================
    (empty)

Added: webservices/axis2/trunk/c/tools/md5/INSTALL
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/md5/INSTALL?rev=610322&view=auto
==============================================================================
--- webservices/axis2/trunk/c/tools/md5/INSTALL (added)
+++ webservices/axis2/trunk/c/tools/md5/INSTALL Wed Jan  9 01:42:48 2008
@@ -0,0 +1,14 @@
+Getting Axis2/C md5 Source Working on Linux
+==============================================
+Build the source
+This can be done using the following command sequence:
+        ./configure
+        make
+        make install
+        use './configure --help' for options
+
+NOTE: If you don't provide a --prefix configure option, it will by default 
+install into /usr/local/md5 directory.
+
+
+

Added: webservices/axis2/trunk/c/tools/md5/LICENSE
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/md5/LICENSE?rev=610322&view=auto
==============================================================================
--- webservices/axis2/trunk/c/tools/md5/LICENSE (added)
+++ webservices/axis2/trunk/c/tools/md5/LICENSE Wed Jan  9 01:42:48 2008
@@ -0,0 +1,203 @@
+
+                                 Apache License
+                           Version 2.0, January 2004
+                        http://www.apache.org/licenses/
+
+   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+   1. Definitions.
+
+      "License" shall mean the terms and conditions for use, reproduction,
+      and distribution as defined by Sections 1 through 9 of this document.
+
+      "Licensor" shall mean the copyright owner or entity authorized by
+      the copyright owner that is granting the License.
+
+      "Legal Entity" shall mean the union of the acting entity and all
+      other entities that control, are controlled by, or are under common
+      control with that entity. For the purposes of this definition,
+      "control" means (i) the power, direct or indirect, to cause the
+      direction or management of such entity, whether by contract or
+      otherwise, or (ii) ownership of fifty percent (50%) or more of the
+      outstanding shares, or (iii) beneficial ownership of such entity.
+
+      "You" (or "Your") shall mean an individual or Legal Entity
+      exercising permissions granted by this License.
+
+      "Source" form shall mean the preferred form for making modifications,
+      including but not limited to software source code, documentation
+      source, and configuration files.
+
+      "Object" form shall mean any form resulting from mechanical
+      transformation or translation of a Source form, including but
+      not limited to compiled object code, generated documentation,
+      and conversions to other media types.
+
+      "Work" shall mean the work of authorship, whether in Source or
+      Object form, made available under the License, as indicated by a
+      copyright notice that is included in or attached to the work
+      (an example is provided in the Appendix below).
+
+      "Derivative Works" shall mean any work, whether in Source or Object
+      form, that is based on (or derived from) the Work and for which the
+      editorial revisions, annotations, elaborations, or other modifications
+      represent, as a whole, an original work of authorship. For the purposes
+      of this License, Derivative Works shall not include works that remain
+      separable from, or merely link (or bind by name) to the interfaces of,
+      the Work and Derivative Works thereof.
+
+      "Contribution" shall mean any work of authorship, including
+      the original version of the Work and any modifications or additions
+      to that Work or Derivative Works thereof, that is intentionally
+      submitted to Licensor for inclusion in the Work by the copyright owner
+      or by an individual or Legal Entity authorized to submit on behalf of
+      the copyright owner. For the purposes of this definition, "submitted"
+      means any form of electronic, verbal, or written communication sent
+      to the Licensor or its representatives, including but not limited to
+      communication on electronic mailing lists, source code control systems,
+      and issue tracking systems that are managed by, or on behalf of, the
+      Licensor for the purpose of discussing and improving the Work, but
+      excluding communication that is conspicuously marked or otherwise
+      designated in writing by the copyright owner as "Not a Contribution."
+
+      "Contributor" shall mean Licensor and any individual or Legal Entity
+      on behalf of whom a Contribution has been received by Licensor and
+      subsequently incorporated within the Work.
+
+   2. Grant of Copyright License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      copyright license to reproduce, prepare Derivative Works of,
+      publicly display, publicly perform, sublicense, and distribute the
+      Work and such Derivative Works in Source or Object form.
+
+   3. Grant of Patent License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      (except as stated in this section) patent license to make, have made,
+      use, offer to sell, sell, import, and otherwise transfer the Work,
+      where such license applies only to those patent claims licensable
+      by such Contributor that are necessarily infringed by their
+      Contribution(s) alone or by combination of their Contribution(s)
+      with the Work to which such Contribution(s) was submitted. If You
+      institute patent litigation against any entity (including a
+      cross-claim or counterclaim in a lawsuit) alleging that the Work
+      or a Contribution incorporated within the Work constitutes direct
+      or contributory patent infringement, then any patent licenses
+      granted to You under this License for that Work shall terminate
+      as of the date such litigation is filed.
+
+   4. Redistribution. You may reproduce and distribute copies of the
+      Work or Derivative Works thereof in any medium, with or without
+      modifications, and in Source or Object form, provided that You
+      meet the following conditions:
+
+      (a) You must give any other recipients of the Work or
+          Derivative Works a copy of this License; and
+
+      (b) You must cause any modified files to carry prominent notices
+          stating that You changed the files; and
+
+      (c) You must retain, in the Source form of any Derivative Works
+          that You distribute, all copyright, patent, trademark, and
+          attribution notices from the Source form of the Work,
+          excluding those notices that do not pertain to any part of
+          the Derivative Works; and
+
+      (d) If the Work includes a "NOTICE" text file as part of its
+          distribution, then any Derivative Works that You distribute must
+          include a readable copy of the attribution notices contained
+          within such NOTICE file, excluding those notices that do not
+          pertain to any part of the Derivative Works, in at least one
+          of the following places: within a NOTICE text file distributed
+          as part of the Derivative Works; within the Source form or
+          documentation, if provided along with the Derivative Works; or,
+          within a display generated by the Derivative Works, if and
+          wherever such third-party notices normally appear. The contents
+          of the NOTICE file are for informational purposes only and
+          do not modify the License. You may add Your own attribution
+          notices within Derivative Works that You distribute, alongside
+          or as an addendum to the NOTICE text from the Work, provided
+          that such additional attribution notices cannot be construed
+          as modifying the License.
+
+      You may add Your own copyright statement to Your modifications and
+      may provide additional or different license terms and conditions
+      for use, reproduction, or distribution of Your modifications, or
+      for any such Derivative Works as a whole, provided Your use,
+      reproduction, and distribution of the Work otherwise complies with
+      the conditions stated in this License.
+
+   5. Submission of Contributions. Unless You explicitly state otherwise,
+      any Contribution intentionally submitted for inclusion in the Work
+      by You to the Licensor shall be under the terms and conditions of
+      this License, without any additional terms or conditions.
+      Notwithstanding the above, nothing herein shall supersede or modify
+      the terms of any separate license agreement you may have executed
+      with Licensor regarding such Contributions.
+
+   6. Trademarks. This License does not grant permission to use the trade
+      names, trademarks, service marks, or product names of the Licensor,
+      except as required for reasonable and customary use in describing the
+      origin of the Work and reproducing the content of the NOTICE file.
+
+   7. Disclaimer of Warranty. Unless required by applicable law or
+      agreed to in writing, Licensor provides the Work (and each
+      Contributor provides its Contributions) on an "AS IS" BASIS,
+      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+      implied, including, without limitation, any warranties or conditions
+      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+      PARTICULAR PURPOSE. You are solely responsible for determining the
+      appropriateness of using or redistributing the Work and assume any
+      risks associated with Your exercise of permissions under this License.
+
+   8. Limitation of Liability. In no event and under no legal theory,
+      whether in tort (including negligence), contract, or otherwise,
+      unless required by applicable law (such as deliberate and grossly
+      negligent acts) or agreed to in writing, shall any Contributor be
+      liable to You for damages, including any direct, indirect, special,
+      incidental, or consequential damages of any character arising as a
+      result of this License or out of the use or inability to use the
+      Work (including but not limited to damages for loss of goodwill,
+      work stoppage, computer failure or malfunction, or any and all
+      other commercial damages or losses), even if such Contributor
+      has been advised of the possibility of such damages.
+
+   9. Accepting Warranty or Additional Liability. While redistributing
+      the Work or Derivative Works thereof, You may choose to offer,
+      and charge a fee for, acceptance of support, warranty, indemnity,
+      or other liability obligations and/or rights consistent with this
+      License. However, in accepting such obligations, You may act only
+      on Your own behalf and on Your sole responsibility, not on behalf
+      of any other Contributor, and only if You agree to indemnify,
+      defend, and hold each Contributor harmless for any liability
+      incurred by, or claims asserted against, such Contributor by reason
+      of your accepting any such warranty or additional liability.
+
+   END OF TERMS AND CONDITIONS
+
+   APPENDIX: How to apply the Apache License to your work.
+
+      To apply the Apache License to your work, attach the following
+      boilerplate notice, with the fields enclosed by brackets "[]"
+      replaced with your own identifying information. (Don't include
+      the brackets!)  The text should be enclosed in the appropriate
+      comment syntax for the file format. We also recommend that a
+      file or class name and description of purpose be included on the
+      same "printed page" as the copyright notice for easier
+      identification within third-party archives.
+
+   Copyright [yyyy] [name of copyright owner]
+
+   Licensed under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+

Added: webservices/axis2/trunk/c/tools/md5/Makefile.am
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/md5/Makefile.am?rev=610322&view=auto
==============================================================================
--- webservices/axis2/trunk/c/tools/md5/Makefile.am (added)
+++ webservices/axis2/trunk/c/tools/md5/Makefile.am Wed Jan  9 01:42:48 2008
@@ -0,0 +1,4 @@
+SUBDIRS = src 
+includedir=$(prefix)/include/axis2-1.2
+data_DATA= INSTALL README AUTHORS NEWS LICENSE COPYING
+EXTRA_DIST=LICENSE

Added: webservices/axis2/trunk/c/tools/md5/NEWS
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/md5/NEWS?rev=610322&view=auto
==============================================================================
    (empty)

Added: webservices/axis2/trunk/c/tools/md5/README
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/md5/README?rev=610322&view=auto
==============================================================================
--- webservices/axis2/trunk/c/tools/md5/README (added)
+++ webservices/axis2/trunk/c/tools/md5/README Wed Jan  9 01:42:48 2008
@@ -0,0 +1,21 @@
+                            Axis2C MD5 Generator
+                           ======================
+
+What is it?
+-----------
+
+Axis2 MD5 project is aimed at generating md5 checksums for files. It works only in command line interface.
+
+How to run the MD5 Generator?
+-----------------------------
+
+Run the file called md5 with the File Name.
+For instruction run md5 -h
+
+
+Installation
+------------
+
+Please see the file called INSTALL. 
+
+

Added: webservices/axis2/trunk/c/tools/md5/autogen.sh
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/md5/autogen.sh?rev=610322&view=auto
==============================================================================
--- webservices/axis2/trunk/c/tools/md5/autogen.sh (added)
+++ webservices/axis2/trunk/c/tools/md5/autogen.sh Wed Jan  9 01:42:48 2008
@@ -0,0 +1,50 @@
+#!/bin/bash
+
+echo -n 'Running libtoolize...'
+if [ `uname -s` = Darwin ]
+then
+    LIBTOOLIZE=glibtoolize
+else
+    LIBTOOLIZE=libtoolize
+fi
+
+if $LIBTOOLIZE --force > /dev/null 2>&1; then
+    echo 'done.'
+else
+    echo 'failed.'
+    exit 1
+fi
+
+echo -n 'Running aclocal...'
+if aclocal > /dev/null 2>&1; then
+	echo 'done.'
+else
+	echo 'failed.'
+	exit 1
+fi
+
+echo -n 'Running autoheader...'
+if autoheader > /dev/null 2>&1; then
+	echo 'done.'
+else
+	echo 'failed.'
+	exit 1
+fi
+
+echo -n 'Running autoconf...'
+if autoconf > /dev/null 2>&1; then
+	echo 'done.'
+else
+	echo 'failed.'
+	exit 1
+fi
+
+echo -n 'Running automake...'
+if automake --add-missing > /dev/null 2>&1; then
+	echo 'done.'
+else
+	echo 'failed.'
+	exit 1
+fi
+
+echo 'done'

Propchange: webservices/axis2/trunk/c/tools/md5/autogen.sh
------------------------------------------------------------------------------
    svn:executable = *

Added: webservices/axis2/trunk/c/tools/md5/build.sh
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/md5/build.sh?rev=610322&view=auto
==============================================================================
--- webservices/axis2/trunk/c/tools/md5/build.sh (added)
+++ webservices/axis2/trunk/c/tools/md5/build.sh Wed Jan  9 01:42:48 2008
@@ -0,0 +1,13 @@
+#!/bin/bash
+
+./autogen.sh
+
+if test -z ${AXIS2C_HOME}
+then
+    AXIS2C_HOME=`pwd`/../deploy
+fi
+
+export AXIS2C_HOME
+
+./configure --prefix=${AXIS2C_HOME} --enable-tests=no 
+make

Added: webservices/axis2/trunk/c/tools/md5/configure.ac
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/md5/configure.ac?rev=610322&view=auto
==============================================================================
--- webservices/axis2/trunk/c/tools/md5/configure.ac (added)
+++ webservices/axis2/trunk/c/tools/md5/configure.ac Wed Jan  9 01:42:48 2008
@@ -0,0 +1,111 @@
+dnl run autogen.sh to generate the configure script.
+
+AC_PREREQ(2.59)
+
+AC_INIT(md5-src, 0.96)
+AC_CANONICAL_SYSTEM
+AM_CONFIG_HEADER(config.h)
+AM_INIT_AUTOMAKE(AC_PACKAGE_NAME, AC_PACKAGE_VERSION)
+AC_PREFIX_DEFAULT(/usr/local/md5)
+
+dnl Checks for programs.
+AC_PROG_CC
+AC_PROG_CXX
+AC_PROG_CPP
+AC_PROG_LIBTOOL
+AC_PROG_INSTALL
+AC_PROG_LN_S
+AC_PROG_MAKE_SET
+
+
+CFLAGS="$CFLAGS -D_LARGEFILE64_SOURCE -g"
+if test "$GCC" = "yes"; then
+    CFLAGS="$CFLAGS -ansi -Wall -Wno-implicit-function-declaration"
+fi
+
+LDFLAGS="$LDFLAGS -lpthread"
+
+dnl Checks for header files.
+AC_HEADER_STDC
+AC_CHECK_HEADERS([stdio.h stdlib.h string.h])
+
+dnl Checks for typedefs, structures, and compiler characteristics.
+AC_C_CONST
+
+dnl Checks for library functions.
+AC_FUNC_MALLOC
+AC_FUNC_REALLOC
+AC_CHECK_FUNCS([memmove])
+
+AC_CHECK_LIB(z, inflate)
+dnl AC_CHECK_LIB(cutest, CuTestInit)
+
+AC_MSG_CHECKING(whether to build libxml2 xml parser library)
+AC_ARG_ENABLE(libxml2, [  --enable-libxml2    build libxml2 xml parser library wrapper. default=yes],
+[ case "${enableval}" in
+  no)
+    AC_MSG_RESULT(no)
+    WRAPPER_DIR=""
+    ;;
+  *)
+    AC_MSG_RESULT(yes)
+    WRAPPER_DIR="libxml2"
+
+    ;;
+  esac ],
+  AC_MSG_RESULT(yes)
+  WRAPPER_DIR="libxml2"
+)
+
+AC_MSG_CHECKING(whether to build guththila xml parser library)
+AC_ARG_ENABLE(guththila, [  --enable-guththila    build guththila xml parser library wrapper. default=no],
+[ case "${enableval}" in
+  no)
+    AC_MSG_RESULT(no)
+    ;;
+  *)
+    AC_MSG_RESULT(yes)
+    WRAPPER_DIR="guththila"
+    if test -d $srcdir/guththila; then
+        AC_CONFIG_SUBDIRS(guththila)
+    fi
+
+   GUTHTHILA_DIR="guththila"
+    ;;
+  esac ],
+  AC_MSG_RESULT(no)
+)
+
+
+AC_MSG_CHECKING(whether to build tests)
+AC_ARG_ENABLE(tests,
+[  --enable-tests    build tests. default=no],
+[ case "${enableval}" in
+  no)
+    AC_MSG_RESULT(no)
+    TESTDIR=""
+    ;;
+  *)
+    AC_MSG_RESULT(yes)
+    TESTDIR="test"
+
+    ;;
+  esac ],
+  AC_MSG_RESULT(no)
+  TESTDIR=""
+)
+
+
+UTILINC=$axis2_utilinc
+
+AC_SUBST(UTILINC)
+AC_SUBST(TESTDIR)
+AC_SUBST(WRAPPER_DIR)
+
+CFLAGS="$CFLAGS"
+
+AC_CONFIG_FILES([Makefile \
+    src/Makefile \
+    ])
+    
+AC_OUTPUT

Added: webservices/axis2/trunk/c/tools/md5/src/Makefile.am
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/md5/src/Makefile.am?rev=610322&view=auto
==============================================================================
--- webservices/axis2/trunk/c/tools/md5/src/Makefile.am (added)
+++ webservices/axis2/trunk/c/tools/md5/src/Makefile.am Wed Jan  9 01:42:48 2008
@@ -0,0 +1,14 @@
+prgbindir=$(prefix)/bin/tools
+
+prgbin_PROGRAMS = md5
+
+md5_SOURCES =  md5.c
+
+md5_LDADD =  \
+			 ../../../util/src/libaxutil.la
+
+INCLUDES = -I$(top_builddir)/include \
+		   -I ../../../util/include \
+		   -I ../../../include \
+		   -I ../include
+

Added: webservices/axis2/trunk/c/tools/md5/src/md5.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/md5/src/md5.c?rev=610322&view=auto
==============================================================================
--- webservices/axis2/trunk/c/tools/md5/src/md5.c (added)
+++ webservices/axis2/trunk/c/tools/md5/src/md5.c Wed Jan  9 01:42:48 2008
@@ -0,0 +1,80 @@
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (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.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <stdio.h>
+#include <axutil_string.h>
+#include <axutil_md5.h>
+
+static void md5_file (char *filename, const axutil_env_t * env)
+{
+    FILE * file;
+    axutil_md5_ctx_t * context;
+    int len, i;
+    unsigned char buffer[1024], digest[16];
+
+    if ((file = fopen (filename, "rb")) == NULL)
+    {
+        printf ("%s can't be opened\n", filename);
+    }
+    else
+    {
+        context = axutil_md5_ctx_create(env);
+        while ((len = fread (buffer, 1, 1024, file)) != 0)
+        {
+            axutil_md5_update(context, env, buffer, len);
+        }
+        axutil_md5_final(context, env, digest);
+        axutil_md5_ctx_free(context, env);
+        fclose (file);
+        printf ("MD5 (%s) = ", filename);
+        for (i = 0; i < 16; i++)
+        {
+            printf ("%02x", digest[i]);
+        }
+        printf ("\n");
+    }
+}
+
+int
+main(
+    int argc,
+    char **argv)
+{
+    const axutil_env_t *env = NULL;
+
+    env = axutil_env_create_all("md5.log", AXIS2_LOG_LEVEL_DEBUG);
+    if (argc > 1)
+    {
+        if (axutil_strcmp(argv[1], "-h") == 0)
+        {
+            printf("Usage : %s [file_name]\n", argv[0]);
+            printf("use -h for help\n");
+            return 0;
+        }
+        else
+        {
+            md5_file(argv[1], env);
+        }
+    }
+    if (env)
+    {
+        axutil_env_free((axutil_env_t *) env);
+        env = NULL;
+    }
+    return 0;
+}

Added: webservices/axis2/trunk/c/tools/md5/test/Makefile.am
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/tools/md5/test/Makefile.am?rev=610322&view=auto
==============================================================================
--- webservices/axis2/trunk/c/tools/md5/test/Makefile.am (added)
+++ webservices/axis2/trunk/c/tools/md5/test/Makefile.am Wed Jan  9 01:42:48 2008
@@ -0,0 +1 @@
+SUBDIRS = unit

Added: webservices/axis2/trunk/c/util/include/axutil_digest_calc.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/util/include/axutil_digest_calc.h?rev=610322&view=auto
==============================================================================
--- webservices/axis2/trunk/c/util/include/axutil_digest_calc.h (added)
+++ webservices/axis2/trunk/c/util/include/axutil_digest_calc.h Wed Jan  9 01:42:48 2008
@@ -0,0 +1,109 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (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.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef AXUTIL_DIGEST_CALC_H
+#define AXUTIL_DIGEST_CALC_H
+
+/**
+ * @file axutil_digest_calc.h
+ * @brief implements the calculations of H(A1), H(A2),
+ * request-digest and response-digest for Axis2 based on rfc2617.
+ */
+
+#include <axutil_utils_defines.h>
+#include <axutil_env.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+    /** 
+     * @defgroup axis2_util utilities
+     * @ingroup axis2
+     * @{
+     * @}
+     */
+
+    /**
+     * @defgroup axutil_digest_calc digest_calc
+     * @ingroup axis2_util
+     * @{
+     */
+
+    #define AXIS2_DIGEST_HASH_LEN 16
+    #define AXIS2_DIGEST_HASH_HEX_LEN 32
+
+    typedef unsigned char axutil_digest_hash_t[AXIS2_DIGEST_HASH_LEN];
+    typedef unsigned char axutil_digest_hash_hex_t[AXIS2_DIGEST_HASH_HEX_LEN + 1];
+
+    /**
+      * calculate H(A1) as per HTTP Digest spec
+      * @param env, pointer to env struct
+      * @param algorithm, algorithm
+      * @param user_name, user name
+      * @param realm, reaalm
+      * @param password, password
+      * @param nonce, nonce from server
+      * @param cnonce, client nonce
+      * @param session_key, H(A1)
+      * @return AXIS2_SUCCESS on success or AXIS2_FAILURE
+      */
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axutil_digest_calc_get_h_a1(
+        const axutil_env_t * env,
+        char * algorithm,               
+        char * user_name,              
+        char * realm,                 
+        char * password,             
+        char * nonce,               
+        char * cnonce,             
+        axutil_digest_hash_hex_t session_key); 
+
+    /** 
+      * calculate request-digest/response-digest as per HTTP Digest spec 
+      * @param env, pointer to env struct
+      * @param h_a1, H(A1)
+      * @param nonce, nonce from server
+      * @param cnonce, client nonce
+      * @param qop, qop-value: "", "auth", "auth-int"
+      * @param method, method from the request
+      * @param digest_uri, requested URL 
+      * @param h_entry, H(entity body) if qop="auth-int"
+      * @param response, request-digest or response-digest
+      * @return AXIS2_SUCCESS on success or AXIS2_FAILURE
+      */
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axutil_digest_calc_get_response(
+        const axutil_env_t * env,
+        axutil_digest_hash_hex_t h_a1,                       
+        char * nonce,                      
+        char * nonce_count,               
+        char * cnonce,                   
+        char * qop,                     
+        char * method,                 
+        char * digest_uri,            
+        axutil_digest_hash_hex_t h_entity,  
+        axutil_digest_hash_hex_t response); 
+
+    /** @} */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* AXIS2_DIGEST_CALC_H */

Added: webservices/axis2/trunk/c/util/include/axutil_md5.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/util/include/axutil_md5.h?rev=610322&view=auto
==============================================================================
--- webservices/axis2/trunk/c/util/include/axutil_md5.h (added)
+++ webservices/axis2/trunk/c/util/include/axutil_md5.h Wed Jan  9 01:42:48 2008
@@ -0,0 +1,130 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (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.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef AXUTIL_MD5_H
+#define AXUTIL_MD5_H
+
+/**
+ * @file axutil_md5.h
+ * @brief MD5 Implementation for Axis2 based on rfc1321.
+ */
+
+#include <axutil_utils_defines.h>
+#include <axutil_env.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+    /** 
+     * @defgroup axis2_util utilities
+     * @ingroup axis2
+     * @{
+     * @}
+     */
+
+    /**
+     * @defgroup axutil_md5 md5
+     * @ingroup axis2_util
+     * @{
+     */
+
+    /** The MD5 digest size */
+    #define AXIS2_MD5_DIGESTSIZE 16
+
+    typedef struct axutil_md5_ctx
+    {
+        /** state (ABCD) */
+        unsigned int state[4];
+        /** number of bits, modulo 2^64 (lsb first) */
+        unsigned int count[2];
+        /** input buffer */
+        unsigned char buffer[64];
+    }
+    axutil_md5_ctx_t;
+
+    /**
+     * Creates md5_ctx struct, which is used for the MD5 message-digest
+     * operation. Initialization of the struct is done during the creation
+     * process.
+     * @param env, pointer to the env struct.
+     * @return pointer to md5_ctx struct created.
+     */ 
+    AXIS2_EXTERN axutil_md5_ctx_t *AXIS2_CALL
+    axutil_md5_ctx_create(
+        const axutil_env_t * env);
+
+    /** 
+     * Frees the md5_ctx struct
+     * @param md5_ctx, pointer to struct to free.
+     * @param env, pointer to the env struct.
+     */
+    AXIS2_EXTERN void AXIS2_CALL
+    axutil_md5_ctx_free(
+        axutil_md5_ctx_t * md5_ctx,
+        const axutil_env_t * env);
+
+    /**
+     * MD5 block update operation. Continue an MD5 message-digest operation, 
+     * processing another message block, and updating the context.
+     * @param context The MD5 content to update.
+     * @param env, pointer to the env struct.
+     * @param input_str next message block to update
+     * @param inputLen The length of the next message block
+     */
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axutil_md5_update(
+        axutil_md5_ctx_t *context,
+        const axutil_env_t * env,
+        const void *input_str,
+        size_t inputLen);
+
+    /**
+     * MD5 finalization. Ends an MD5 message-digest operation, writing the 
+     * message digest and zeroing the context.
+     * @param digest The final MD5 digest.
+     * @param env, pointer to the env struct.
+     * @param context The MD5 content we are finalizing.
+     */
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axutil_md5_final(
+        axutil_md5_ctx_t *context,
+        const axutil_env_t * env,
+        unsigned char digest[AXIS2_MD5_DIGESTSIZE]);
+
+    /**
+     * MD5 in one step.
+     * @param env, pointer to the env struct.
+     * @param digest The final MD5 digest.
+     * @param input_str The message block to use.
+     * @param inputLen The length of the message block.
+     */
+    AXIS2_EXTERN axis2_status_t AXIS2_CALL
+    axutil_md5(
+         const axutil_env_t * env, 
+         unsigned char digest[AXIS2_MD5_DIGESTSIZE],
+         const void *input_str,
+         size_t inputLen);
+
+    /** @} */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* AXIS2_MD5_H */

Modified: webservices/axis2/trunk/c/util/src/Makefile.am
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/util/src/Makefile.am?rev=610322&r1=610321&r2=610322&view=diff
==============================================================================
--- webservices/axis2/trunk/c/util/src/Makefile.am (original)
+++ webservices/axis2/trunk/c/util/src/Makefile.am Wed Jan  9 01:42:48 2008
@@ -35,7 +35,8 @@
 						rand.c \
 						date_time_util.c \
 						version.c \
-						duration.c
+						duration.c \
+			md5.c 
                         
 libaxutil_la_LIBADD =	$(top_builddir)/src/platforms/unix/libaxis2_unix.la \
 			@ZLIBLIBS@

Added: webservices/axis2/trunk/c/util/src/digest_calc.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/util/src/digest_calc.c?rev=610322&view=auto
==============================================================================
--- webservices/axis2/trunk/c/util/src/digest_calc.c (added)
+++ webservices/axis2/trunk/c/util/src/digest_calc.c Wed Jan  9 01:42:48 2008
@@ -0,0 +1,145 @@
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (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.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <axutil_string.h>
+#include <axutil_md5.h>
+#include <axutil_digest_calc.h>
+
+void AXIS2_CALL convert_to_hex(
+    axutil_digest_hash_t bin,
+    axutil_digest_hash_hex_t hex);
+
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
+axutil_digest_calc_get_h_a1(
+    const axutil_env_t * env,
+    char * algorithm,                      
+    char * user_name,                      
+    char * realm,                          
+    char * password,                       
+    char * nonce,                          
+    char * cnonce,                         
+    axutil_digest_hash_hex_t session_key)
+{
+    axutil_md5_ctx_t * ctx;
+    axutil_digest_hash_t ha1;
+
+    ctx = axutil_md5_ctx_create(env);
+    if (!ctx)
+        return AXIS2_FAILURE;
+    axutil_md5_update(ctx, env, user_name, strlen(user_name));
+    axutil_md5_update(ctx, env, ":", 1);
+    axutil_md5_update(ctx, env, realm, strlen(realm));
+    axutil_md5_update(ctx, env, ":", 1);
+    axutil_md5_update(ctx, env, password, strlen(password));
+    axutil_md5_final(ctx, env, ha1);
+    axutil_md5_ctx_free(ctx, env);
+    if (axutil_strcasecmp(algorithm, "md5-sess") == 0)
+    {
+        ctx = axutil_md5_ctx_create(env);
+        if (!ctx)
+            return AXIS2_FAILURE;
+        axutil_md5_update(ctx, env, ha1, AXIS2_DIGEST_HASH_LEN);
+        axutil_md5_update(ctx, env, ":", 1);
+        axutil_md5_update(ctx, env, nonce, strlen(nonce));
+        axutil_md5_update(ctx, env, ":", 1);
+        axutil_md5_update(ctx, env, cnonce, strlen(cnonce));
+        axutil_md5_final(ctx, env, ha1);
+        axutil_md5_ctx_free(ctx, env);
+    }
+    convert_to_hex(ha1, session_key);
+    return AXIS2_SUCCESS;
+} 
+
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
+axutil_digest_calc_get_response(
+    const axutil_env_t * env,
+    axutil_digest_hash_hex_t h_a1,                       
+    char * nonce,                       
+    char * nonce_count,                 
+    char * cnonce,                      
+    char * qop,                         
+    char * method,                      
+    char * digest_uri,                  
+    axutil_digest_hash_hex_t h_entity,  
+    axutil_digest_hash_hex_t response)
+{
+    axutil_md5_ctx_t * ctx;
+    axutil_digest_hash_t ha2;
+    axutil_digest_hash_t resp_hash;
+    axutil_digest_hash_hex_t ha2_hex;
+
+    ctx = axutil_md5_ctx_create(env);
+    if (!ctx)
+        return AXIS2_FAILURE;
+    axutil_md5_update(ctx, env, method, strlen(method));
+    axutil_md5_update(ctx, env, ":", 1);
+    axutil_md5_update(ctx, env, digest_uri, strlen(digest_uri));
+    if (axutil_strcasecmp(qop, "auth-int") == 0)
+    {
+        axutil_md5_update(ctx, env, ":", 1);
+        axutil_md5_update(ctx, env, h_entity, AXIS2_DIGEST_HASH_HEX_LEN);
+    };
+    axutil_md5_final(ctx, env, ha2);
+    axutil_md5_ctx_free(ctx, env);
+    convert_to_hex(ha2, ha2_hex);
+
+    ctx = axutil_md5_ctx_create(env);
+    if (!ctx)
+        return AXIS2_FAILURE;
+    axutil_md5_update(ctx, env, h_a1, AXIS2_DIGEST_HASH_HEX_LEN);
+    axutil_md5_update(ctx, env, ":", 1);
+    axutil_md5_update(ctx, env, nonce, strlen(nonce));
+    axutil_md5_update(ctx, env, ":", 1);
+    if (*qop)
+    {
+        axutil_md5_update(ctx, env, nonce_count, strlen(nonce_count));
+        axutil_md5_update(ctx, env, ":", 1);
+        axutil_md5_update(ctx, env, cnonce, strlen(cnonce));
+        axutil_md5_update(ctx, env, ":", 1);
+        axutil_md5_update(ctx, env, qop, strlen(qop));
+        axutil_md5_update(ctx, env, ":", 1);
+    };
+    axutil_md5_update(ctx, env, ha2_hex, AXIS2_DIGEST_HASH_HEX_LEN);
+    axutil_md5_final(ctx, env, resp_hash);
+    axutil_md5_ctx_free(ctx, env);
+    convert_to_hex(resp_hash, response);
+    return AXIS2_SUCCESS;
+}
+
+void AXIS2_CALL convert_to_hex(
+    axutil_digest_hash_t bin,
+    axutil_digest_hash_hex_t hex)
+{
+    unsigned short i;
+    unsigned char j;
+
+    for (i = 0; i < AXIS2_DIGEST_HASH_LEN; i++)
+    {
+        j = (bin[i] >> 4) & 0xf;
+        if (j <= 9)
+            hex[i*2] = (j + '0');
+         else
+            hex[i*2] = (j + 'a' - 10);
+        j = bin[i] & 0xf;
+        if (j <= 9)
+            hex[i*2+1] = (j + '0');
+         else
+            hex[i*2+1] = (j + 'a' - 10);
+    }
+    hex[AXIS2_DIGEST_HASH_HEX_LEN] = '\0';
+}

Added: webservices/axis2/trunk/c/util/src/md5.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/util/src/md5.c?rev=610322&view=auto
==============================================================================
--- webservices/axis2/trunk/c/util/src/md5.c (added)
+++ webservices/axis2/trunk/c/util/src/md5.c Wed Jan  9 01:42:48 2008
@@ -0,0 +1,353 @@
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (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.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <stdlib.h>
+#include <string.h>
+#include <axutil_md5.h>
+#include <axutil_error_default.h>
+#include <axutil_string.h>
+
+#define S11 7
+#define S12 12
+#define S13 17
+#define S14 22
+#define S21 5
+#define S22 9
+#define S23 14
+#define S24 20
+#define S31 4
+#define S32 11
+#define S33 16
+#define S34 23
+#define S41 6
+#define S42 10
+#define S43 15
+#define S44 21
+
+static void AXIS2_CALL md5_transform(
+    unsigned int state[4],
+    const unsigned char block[64]);
+
+static void AXIS2_CALL encode(
+    unsigned char *output,
+    const unsigned int *input,
+    unsigned int len);
+
+static void AXIS2_CALL decode(
+    unsigned int *output,
+    const unsigned char *input,
+    unsigned int len);
+
+static unsigned char PADDING[64] =
+{
+    0x80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+};
+
+/* F, G, H and I are basic MD5 functions.
+ */
+#define F(x, y, z) (((x) & (y)) | ((~x) & (z)))
+#define G(x, y, z) (((x) & (z)) | ((y) & (~z)))
+#define H(x, y, z) ((x) ^ (y) ^ (z))
+#define I(x, y, z) ((y) ^ ((x) | (~z)))
+
+/* ROTATE_LEFT rotates x left n bits.
+ */
+#define ROTATE_LEFT(x, n) (((x) << (n)) | ((x) >> (32-(n))))
+
+/* FF, GG, HH, and II transformations for rounds 1, 2, 3, and 4.
+ * Rotation is separate from addition to prevent recomputation.
+ */
+#define FF(a, b, c, d, x, s, ac) { \
+ (a) += F ((b), (c), (d)) + (x) + (unsigned int)(ac); \
+ (a) = ROTATE_LEFT ((a), (s)); \
+ (a) += (b); \
+  }
+#define GG(a, b, c, d, x, s, ac) { \
+ (a) += G ((b), (c), (d)) + (x) + (unsigned int)(ac); \
+ (a) = ROTATE_LEFT ((a), (s)); \
+ (a) += (b); \
+  }
+#define HH(a, b, c, d, x, s, ac) { \
+ (a) += H ((b), (c), (d)) + (x) + (unsigned int)(ac); \
+ (a) = ROTATE_LEFT ((a), (s)); \
+ (a) += (b); \
+  }
+#define II(a, b, c, d, x, s, ac) { \
+ (a) += I ((b), (c), (d)) + (x) + (unsigned int)(ac); \
+ (a) = ROTATE_LEFT ((a), (s)); \
+ (a) += (b); \
+  }
+
+AXIS2_EXTERN axutil_md5_ctx_t *AXIS2_CALL
+axutil_md5_ctx_create(
+    const axutil_env_t * env)
+{
+    axutil_md5_ctx_t *context;
+    AXIS2_ENV_CHECK(env, NULL);
+
+    context = (axutil_md5_ctx_t *) AXIS2_MALLOC(env->allocator, sizeof(axutil_md5_ctx_t));
+    if (!context)
+    {
+        return NULL;
+    }
+    context->count[0] = context->count[1] = 0;
+
+    /* Load magic initialization constants. */
+    context->state[0] = 0x67452301;
+    context->state[1] = 0xefcdab89;
+    context->state[2] = 0x98badcfe;
+    context->state[3] = 0x10325476;
+    return context;
+}
+
+AXIS2_EXTERN void AXIS2_CALL
+axutil_md5_ctx_free(
+    axutil_md5_ctx_t * md5_ctx,
+    const axutil_env_t * env)
+{
+    AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
+    if (md5_ctx)
+    {
+        AXIS2_FREE(env->allocator, md5_ctx);
+    }
+}
+
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
+axutil_md5_update(
+    axutil_md5_ctx_t *context,
+    const axutil_env_t * env,
+    const void *input_str,
+    size_t inputLen)
+{
+    const unsigned char *input = input_str;
+    unsigned int i, idx, partLen;
+    AXIS2_ENV_CHECK(env, AXIS2_FALSE);
+
+    /* Compute number of bytes mod 64 */
+    idx = (unsigned int)((context->count[0] >> 3) & 0x3F);
+
+    /* Update number of bits */
+    if ((context->count[0] += ((unsigned int)inputLen << 3))
+            < ((unsigned int)inputLen << 3))
+        context->count[1]++;
+    context->count[1] += (unsigned int)inputLen >> 29;
+
+    partLen = 64 - idx;
+
+    /* Transform as many times as possible. */
+    if (inputLen >= partLen) {
+        memcpy(&context->buffer[idx], input, partLen);
+        md5_transform(context->state, context->buffer);
+
+        for (i = partLen; i + 63 < inputLen; i += 64)
+            md5_transform(context->state, &input[i]);
+
+        idx = 0;
+    }
+    else
+        i = 0;
+
+    /* Buffer remaining input */
+    memcpy(&context->buffer[idx], &input[i], inputLen - i);
+    return AXIS2_SUCCESS;
+}
+
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
+axutil_md5_final(
+    axutil_md5_ctx_t *context,
+    const axutil_env_t * env,
+    unsigned char digest[AXIS2_MD5_DIGESTSIZE])
+{
+    unsigned char bits[8];
+    unsigned int idx, padLen;
+    AXIS2_ENV_CHECK(env, AXIS2_FALSE);
+
+    /* Save number of bits */
+    encode(bits, context->count, 8);
+
+    /* Pad out to 56 mod 64. */
+    idx = (unsigned int)((context->count[0] >> 3) & 0x3f);
+    padLen = (idx < 56) ? (56 - idx) : (120 - idx);
+    axutil_md5_update(context, env, PADDING, padLen);
+
+    /* Append length (before padding) */
+    axutil_md5_update(context, env, bits, 8);
+
+    /* Store state in digest */
+    encode(digest, context->state, AXIS2_MD5_DIGESTSIZE);
+
+    /* Zeroize sensitive information. */
+    memset(context, 0, sizeof(*context));
+
+    return AXIS2_SUCCESS;
+}
+
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
+axutil_md5(
+     const axutil_env_t * env, 
+     unsigned char digest[AXIS2_MD5_DIGESTSIZE],
+     const void *input_str,
+     size_t inputLen)
+{
+    const unsigned char *input = input_str;
+    axutil_md5_ctx_t * ctx;
+    axis2_status_t rv;
+    AXIS2_ENV_CHECK(env, AXIS2_FALSE);
+
+    ctx = axutil_md5_ctx_create(env);
+    if (!ctx)
+        return AXIS2_FAILURE;
+    
+    rv = axutil_md5_update(ctx, env, input, inputLen); 
+    if (rv != AXIS2_SUCCESS)
+        return rv;
+
+    rv = axutil_md5_final(ctx, env, digest);
+    axutil_md5_ctx_free(ctx, env);
+    return rv;
+}
+
+/* MD5 basic transformation. Transforms state based on block. */
+static void AXIS2_CALL md5_transform(
+    unsigned int state[4],
+    const unsigned char block[64])
+{
+    unsigned int a = state[0], b = state[1], c = state[2], d = state[3],
+                 x[AXIS2_MD5_DIGESTSIZE];
+
+    decode(x, block, 64);
+
+    /* Round 1 */
+    FF(a, b, c, d, x[0],  S11, 0xd76aa478); /* 1 */
+    FF(d, a, b, c, x[1],  S12, 0xe8c7b756); /* 2 */
+    FF(c, d, a, b, x[2],  S13, 0x242070db); /* 3 */
+    FF(b, c, d, a, x[3],  S14, 0xc1bdceee); /* 4 */
+    FF(a, b, c, d, x[4],  S11, 0xf57c0faf); /* 5 */
+    FF(d, a, b, c, x[5],  S12, 0x4787c62a); /* 6 */
+    FF(c, d, a, b, x[6],  S13, 0xa8304613); /* 7 */
+    FF(b, c, d, a, x[7],  S14, 0xfd469501); /* 8 */
+    FF(a, b, c, d, x[8],  S11, 0x698098d8); /* 9 */
+    FF(d, a, b, c, x[9],  S12, 0x8b44f7af); /* 10 */
+    FF(c, d, a, b, x[10], S13, 0xffff5bb1); /* 11 */
+    FF(b, c, d, a, x[11], S14, 0x895cd7be); /* 12 */
+    FF(a, b, c, d, x[12], S11, 0x6b901122); /* 13 */
+    FF(d, a, b, c, x[13], S12, 0xfd987193); /* 14 */
+    FF(c, d, a, b, x[14], S13, 0xa679438e); /* 15 */
+    FF(b, c, d, a, x[15], S14, 0x49b40821); /* 16 */
+
+    /* Round 2 */
+    GG(a, b, c, d, x[1],  S21, 0xf61e2562); /* 17 */
+    GG(d, a, b, c, x[6],  S22, 0xc040b340); /* 18 */
+    GG(c, d, a, b, x[11], S23, 0x265e5a51); /* 19 */
+    GG(b, c, d, a, x[0],  S24, 0xe9b6c7aa); /* 20 */
+    GG(a, b, c, d, x[5],  S21, 0xd62f105d); /* 21 */
+    GG(d, a, b, c, x[10], S22, 0x2441453);  /* 22 */
+    GG(c, d, a, b, x[15], S23, 0xd8a1e681); /* 23 */
+    GG(b, c, d, a, x[4],  S24, 0xe7d3fbc8); /* 24 */
+    GG(a, b, c, d, x[9],  S21, 0x21e1cde6); /* 25 */
+    GG(d, a, b, c, x[14], S22, 0xc33707d6); /* 26 */
+    GG(c, d, a, b, x[3],  S23, 0xf4d50d87); /* 27 */
+    GG(b, c, d, a, x[8],  S24, 0x455a14ed); /* 28 */
+    GG(a, b, c, d, x[13], S21, 0xa9e3e905); /* 29 */
+    GG(d, a, b, c, x[2],  S22, 0xfcefa3f8); /* 30 */
+    GG(c, d, a, b, x[7],  S23, 0x676f02d9); /* 31 */
+    GG(b, c, d, a, x[12], S24, 0x8d2a4c8a); /* 32 */
+
+    /* Round 3 */
+    HH(a, b, c, d, x[5],  S31, 0xfffa3942); /* 33 */
+    HH(d, a, b, c, x[8],  S32, 0x8771f681); /* 34 */
+    HH(c, d, a, b, x[11], S33, 0x6d9d6122); /* 35 */
+    HH(b, c, d, a, x[14], S34, 0xfde5380c); /* 36 */
+    HH(a, b, c, d, x[1],  S31, 0xa4beea44); /* 37 */
+    HH(d, a, b, c, x[4],  S32, 0x4bdecfa9); /* 38 */
+    HH(c, d, a, b, x[7],  S33, 0xf6bb4b60); /* 39 */
+    HH(b, c, d, a, x[10], S34, 0xbebfbc70); /* 40 */
+    HH(a, b, c, d, x[13], S31, 0x289b7ec6); /* 41 */
+    HH(d, a, b, c, x[0],  S32, 0xeaa127fa); /* 42 */
+    HH(c, d, a, b, x[3],  S33, 0xd4ef3085); /* 43 */
+    HH(b, c, d, a, x[6],  S34, 0x4881d05);  /* 44 */
+    HH(a, b, c, d, x[9],  S31, 0xd9d4d039); /* 45 */
+    HH(d, a, b, c, x[12], S32, 0xe6db99e5); /* 46 */
+    HH(c, d, a, b, x[15], S33, 0x1fa27cf8); /* 47 */
+    HH(b, c, d, a, x[2],  S34, 0xc4ac5665); /* 48 */
+
+    /* Round 4 */
+    II(a, b, c, d, x[0],  S41, 0xf4292244); /* 49 */
+    II(d, a, b, c, x[7],  S42, 0x432aff97); /* 50 */
+    II(c, d, a, b, x[14], S43, 0xab9423a7); /* 51 */
+    II(b, c, d, a, x[5],  S44, 0xfc93a039); /* 52 */
+    II(a, b, c, d, x[12], S41, 0x655b59c3); /* 53 */
+    II(d, a, b, c, x[3],  S42, 0x8f0ccc92); /* 54 */
+    II(c, d, a, b, x[10], S43, 0xffeff47d); /* 55 */
+    II(b, c, d, a, x[1],  S44, 0x85845dd1); /* 56 */
+    II(a, b, c, d, x[8],  S41, 0x6fa87e4f); /* 57 */
+    II(d, a, b, c, x[15], S42, 0xfe2ce6e0); /* 58 */
+    II(c, d, a, b, x[6],  S43, 0xa3014314); /* 59 */
+    II(b, c, d, a, x[13], S44, 0x4e0811a1); /* 60 */
+    II(a, b, c, d, x[4],  S41, 0xf7537e82); /* 61 */
+    II(d, a, b, c, x[11], S42, 0xbd3af235); /* 62 */
+    II(c, d, a, b, x[2],  S43, 0x2ad7d2bb); /* 63 */
+    II(b, c, d, a, x[9],  S44, 0xeb86d391); /* 64 */
+
+    state[0] += a;
+    state[1] += b;
+    state[2] += c;
+    state[3] += d;
+
+    /* Zeroize sensitive information. */
+    memset(x, 0, sizeof(x));
+}
+
+/* encodes input (unsigned int) into output (unsigned char). Assumes len is
+ * a multiple of 4.
+ */
+static void AXIS2_CALL encode(
+    unsigned char *output,
+    const unsigned int *input,
+    unsigned int len)
+{
+    unsigned int i, j;
+    unsigned int k;
+
+    for (i = 0, j = 0; j < len; i++, j += 4) {
+        k = input[i];
+        output[j]     = (unsigned char)(k & 0xff);
+        output[j + 1] = (unsigned char)((k >> 8) & 0xff);
+        output[j + 2] = (unsigned char)((k >> 16) & 0xff);
+        output[j + 3] = (unsigned char)((k >> 24) & 0xff);
+    }
+}
+
+/* decodes input (unsigned char) into output (unsigned int). Assumes len is
+ * a multiple of 4.
+ */
+static void AXIS2_CALL decode(
+    unsigned int *output,
+    const unsigned char *input,
+    unsigned int len)
+{
+    unsigned int i, j;
+
+    for (i = 0, j = 0; j < len; i++, j += 4)
+        output[i] = ((unsigned int)input[j])             |
+                    (((unsigned int)input[j + 1]) << 8)  |
+                    (((unsigned int)input[j + 2]) << 16) |
+                    (((unsigned int)input[j + 3]) << 24);
+}

Modified: webservices/axis2/trunk/c/util/test/util/Makefile.am
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/util/test/util/Makefile.am?rev=610322&r1=610321&r2=610322&view=diff
==============================================================================
--- webservices/axis2/trunk/c/util/test/util/Makefile.am (original)
+++ webservices/axis2/trunk/c/util/test/util/Makefile.am Wed Jan  9 01:42:48 2008
@@ -1,10 +1,11 @@
 TESTS = test_thread
 noinst_PROGRAMS = test_util test_thread
 noinst_HEADERS = test_log.h \
-                    test_thread.h 
+                    test_thread.h \
+                    test_md5.h
 check_PROGRAMS = test_util test_thread
 SUBDIRS =
-test_util_SOURCES = test_util.c test_log.c test_string.c
+test_util_SOURCES = test_util.c test_log.c test_string.c test_md5.c
 test_thread_SOURCES = test_thread.c
 
 test_util_LDADD   =   \

Added: webservices/axis2/trunk/c/util/test/util/test_md5.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/util/test/util/test_md5.c?rev=610322&view=auto
==============================================================================
--- webservices/axis2/trunk/c/util/test/util/test_md5.c (added)
+++ webservices/axis2/trunk/c/util/test/util/test_md5.c Wed Jan  9 01:42:48 2008
@@ -0,0 +1,55 @@
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (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.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <test_md5.h>
+#include <stdio.h>
+#include <axutil_string.h>
+#include <axutil_md5.h>
+
+/* Digests a string and prints the result.
+ */
+static void MDString (char * string, const axutil_env_t * env)
+{
+  axutil_md5_ctx_t * context;
+  unsigned char digest[16];
+  unsigned int i;
+  unsigned int len = axutil_strlen(string);
+
+  context = axutil_md5_ctx_create(env);
+  axutil_md5_update(context, env, string, len);
+  axutil_md5_final(context, env, digest);
+  axutil_md5_ctx_free(context, env);
+
+  printf ("MD%d (\"%s\") = ", 5, string);
+  for (i = 0; i < 16; i++)
+     printf ("%02x", digest[i]);
+  printf ("\n");
+}
+
+void test_md5(const axutil_env_t *env)
+{
+    printf ("\nMD5 test suite:\n");
+    printf ("test confirmation: Rivest, R., \"The MD5 Message-Digest Algorithm\", RFC 1321, April 1992.\n");
+    MDString ("", env);
+    MDString ("a", env);
+    MDString ("abc", env);
+    MDString ("message digest", env);
+    MDString ("abcdefghijklmnopqrstuvwxyz", env);
+    MDString ("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789", env);
+    MDString ("12345678901234567890123456789012345678901234567890123456789012345678901234567890", env);
+}

Added: webservices/axis2/trunk/c/util/test/util/test_md5.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/util/test/util/test_md5.h?rev=610322&view=auto
==============================================================================
--- webservices/axis2/trunk/c/util/test/util/test_md5.h (added)
+++ webservices/axis2/trunk/c/util/test/util/test_md5.h Wed Jan  9 01:42:48 2008
@@ -0,0 +1,27 @@
+
+/*
+* Licensed to the Apache Software Foundation (ASF) under one or more
+* contributor license agreements.  See the NOTICE file distributed with
+* this work for additional information regarding copyright ownership.
+* The ASF licenses this file to You under the Apache License, Version 2.0
+* (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.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+
+#ifndef _TEST_MD5_H_
+#define _TEST_MD5_H_
+
+#include <axutil_env.h>
+
+void test_md5(
+    const axutil_env_t * env);
+
+#endif                          /* _TEST_MD5_H_ */

Modified: webservices/axis2/trunk/c/util/test/util/test_util.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/util/test/util/test_util.c?rev=610322&r1=610321&r2=610322&view=diff
==============================================================================
--- webservices/axis2/trunk/c/util/test/util/test_util.c (original)
+++ webservices/axis2/trunk/c/util/test/util/test_util.c Wed Jan  9 01:42:48 2008
@@ -283,6 +283,7 @@
     test_file_diff(env);
     test_array_list(env);
     test_uuid_gen(env);
+    test_md5(env);
     run_test_log();
     run_test_string(env);
     test_axutil_dir_handler_list_service_or_module_dirs();



---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org