From bcaf5833f0b73566937ad9629d01c943b553abe7 Mon Sep 17 00:00:00 2001 From: damitha Date: Tue, 31 May 2011 09:08:18 +0000 Subject: Initial checkin of ntlm auth code git-svn-id: http://svn.apache.org/repos/asf/axis/axis2/c/core/trunk@1129580 13f79535-47bb-0310-9956-ffa450edef68 --- configure.ac | 35 ++++++++++++++++++++++++++++++ samples/client/Makefile.am | 2 +- samples/configure.ac | 24 ++++++++++++++++++++ src/core/transport/http/sender/Makefile.am | 4 +++- 4 files changed, 63 insertions(+), 2 deletions(-) diff --git a/configure.ac b/configure.ac index 1e09181..5324d72 100644 --- a/configure.ac +++ b/configure.ac @@ -211,6 +211,29 @@ AC_ARG_ENABLE(libxml2, [ --enable-libxml2 AC_MSG_RESULT(no) ) +AC_MSG_CHECKING(whether to build heimdal ntlm wrapper library) +AC_ARG_ENABLE(heimdal, [ --enable-heimdal + build heimdal ntlm library wrapper (default=no)], +[ case "${enableval}" in + no) + AC_MSG_RESULT(no) + NTLM_WRAPPER_DIR="default" + NTLM_SAMPLE_DIR="" + ;; + *) + AC_MSG_RESULT(yes) + NTLM_WRAPPER_DIR="heimdal" + NTLM_SAMPLE_DIR="ntlm" + #PKG_CHECK_MODULES(HEIMDAL, heimdal-1.4) + CFLAGS="$CFLAGS -DAXIS2_HEIMDAL_ENABLED -DAXIS2_NTLM_ENABLED" + CPPFLAGS="$CPPFLAGS $NTLM_CFLAGS -DAXIS2_HEIMDAL_ENABLED -DAXIS2_NTLM_ENABLED" + LDFLAGS="$LDFLAGS $NTLM_LDFLAGS" + ;; + esac ], + AC_MSG_RESULT(no) +) + + AC_MSG_CHECKING(whether to build tcp transport) AC_ARG_ENABLE(tcp, [ --enable-tcp @@ -467,7 +490,11 @@ AC_SUBST(DICLIENT_DIR) AC_SUBST(TESTDIR) AC_SUBST(SAMPLES) AC_SUBST(APACHE2BUILD) +AC_SUBST(NTLM_CFLAGS) +AC_SUBST(NTLM_LDFLAGS) AC_SUBST(WRAPPER_DIR) +AC_SUBST(NTLM_WRAPPER_DIR) +AC_SUBST(NTLM_SAMPLE_DIR) AC_SUBST(TCP_DIR) AC_SUBST(CGI_DIR) AC_SUBST(AMQP_DIR) @@ -478,7 +505,10 @@ AC_SUBST(ZLIBBUILD) AM_CONDITIONAL(AXIS2_SSL_ENABLED, test x$ssl_enabled = xtrue) AM_CONDITIONAL(AXIS2_LIBCURL_ENABLED, test x$libcurl_enabled = xtrue) +export NTLM_LDFLAGS export WRAPPER_DIR +export NTLM_WRAPPER_DIR +export NTLM_SAMPLE_DIR export prefix AC_CONFIG_FILES([Makefile \ @@ -496,6 +526,11 @@ AC_CONFIG_FILES([Makefile \ src/core/transport/http/sender/Makefile \ src/core/transport/http/sender/ssl/Makefile \ src/core/transport/http/sender/libcurl/Makefile \ + src/core/transport/http/sender/ntlm/Makefile \ + src/core/transport/http/sender/ntlm/heimdal/Makefile \ + src/core/transport/http/sender/ntlm/default/Makefile \ + src/core/transport/http/sender/ntlm/test/Makefile \ + src/core/transport/http/sender/ntlm/test/mock_server/Makefile \ src/core/transport/http/receiver/Makefile \ src/core/transport/http/server/simple_axis2_server/Makefile \ src/core/transport/http/server/Makefile \ diff --git a/samples/client/Makefile.am b/samples/client/Makefile.am index 63573e8..2eefd75 100644 --- a/samples/client/Makefile.am +++ b/samples/client/Makefile.am @@ -12,5 +12,5 @@ # 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. -SUBDIRS = echo math google notify mtom yahoo amqp version mtom_callback session +SUBDIRS = echo math google notify mtom yahoo amqp version mtom_callback session $(NTLM_SAMPLE_DIR) EXTRA_DIST= Makefile.am diff --git a/samples/configure.ac b/samples/configure.ac index 181c13f..907055b 100644 --- a/samples/configure.ac +++ b/samples/configure.ac @@ -95,6 +95,28 @@ AC_ARG_ENABLE(diclient, [ --enable-diclient build diclient. default=no], DICLIENT_DIR="" ) +AC_MSG_CHECKING(whether to build heimdal ntlm wrapper library) +AC_ARG_ENABLE(heimdal, [ --enable-heimdal + build heimdal ntlm library wrapper (default=no)], +[ case "${enableval}" in + no) + AC_MSG_RESULT(no) + NTLM_WRAPPER_DIR="default" + NTLM_SAMPLE_DIR="" + ;; + *) + AC_MSG_RESULT(yes) + NTLM_WRAPPER_DIR="heimdal" + NTLM_SAMPLE_DIR="ntlm" + #PKG_CHECK_MODULES(HEIMDAL, heimdal-1.4) + CFLAGS="$CFLAGS -DAXIS2_HEIMDAL_ENABLED -DAXIS2_NTLM_ENABLED" + CPPFLAGS="$CPPFLAGS $NTLM_CFLAGS -DAXIS2_HEIMDAL_ENABLED -DAXIS2_NTLM_ENABLED" + LDFLAGS="$LDFLAGS $NTLM_LDFLAGS" + ;; + esac ], + AC_MSG_RESULT(no) +) + AC_MSG_CHECKING(To Use Axis2 C . This is a compulsory module to build Axis2 C samples) AC_ARG_WITH(axis2, [ --with-axis2[=PATH] Find the AXIS2 header files in 'PATH'. @@ -133,6 +155,7 @@ AC_SUBST(APRINC) AC_SUBST(AXIS2INC) AC_SUBST(GUTHTHILA_DIR) AC_SUBST(GUTHTHILA_LIBS) +AC_SUBST(NTLM_SAMPLE_DIR) AC_SUBST(DICLIENT_DIR) AC_CONFIG_FILES([Makefile \ @@ -162,6 +185,7 @@ AC_CONFIG_FILES([Makefile \ client/amqp/mtom/Makefile \ client/amqp/mtom/resources/Makefile \ client/session/Makefile \ + client/ntlm/Makefile \ user_guide/Makefile \ user_guide/clients/Makefile \ mtom_caching_callback/Makefile \ diff --git a/src/core/transport/http/sender/Makefile.am b/src/core/transport/http/sender/Makefile.am index da10f75..b14fb4e 100644 --- a/src/core/transport/http/sender/Makefile.am +++ b/src/core/transport/http/sender/Makefile.am @@ -12,7 +12,7 @@ # 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. -SUBDIRS=ssl libcurl +SUBDIRS=ssl libcurl ntlm lib_LTLIBRARIES = libaxis2_http_sender.la @@ -48,6 +48,7 @@ libaxis2_http_sender_la_LIBADD = $(top_builddir)/src/core/transport/http/common/ $(top_builddir)/src/core/transport/http/util/libaxis2_http_util.la\ $(top_builddir)/axiom/src/om/libaxis2_axiom.la\ $(top_builddir)/util/src/libaxutil.la\ + $(top_builddir)/src/core/transport/http/sender/ntlm/${NTLM_WRAPPER_DIR}/libaxis2_ntlm.la \ $(LIBCURL_LIBS)\ $(SSL_LIBS) @@ -65,4 +66,5 @@ INCLUDES = -I$(top_builddir)/include \ -I$(top_builddir)/src/core/deployment \ -I$(top_builddir)/util/include \ -I$(top_builddir)/axiom/include \ + -I$(top_builddir)/ntlm/include \ $(SSL_INC) -- cgit v1.1-32-gdbae