summaryrefslogtreecommitdiffstats
path: root/rubbos/app/tomcat-connectors-1.2.32-src/native/jni
diff options
context:
space:
mode:
Diffstat (limited to 'rubbos/app/tomcat-connectors-1.2.32-src/native/jni')
-rw-r--r--rubbos/app/tomcat-connectors-1.2.32-src/native/jni/.libs/jk_jnicb.abin0 -> 365752 bytes
-rw-r--r--rubbos/app/tomcat-connectors-1.2.32-src/native/jni/.libs/jk_jnicb.la35
-rw-r--r--rubbos/app/tomcat-connectors-1.2.32-src/native/jni/.libs/jk_jnicb.lai35
-rw-r--r--rubbos/app/tomcat-connectors-1.2.32-src/native/jni/.libs/jk_jnicb.obin0 -> 16048 bytes
-rwxr-xr-xrubbos/app/tomcat-connectors-1.2.32-src/native/jni/.libs/jk_jnicb.sobin0 -> 251337 bytes
-rw-r--r--rubbos/app/tomcat-connectors-1.2.32-src/native/jni/Makefile45
-rw-r--r--rubbos/app/tomcat-connectors-1.2.32-src/native/jni/Makefile.in45
-rw-r--r--rubbos/app/tomcat-connectors-1.2.32-src/native/jni/Makefile.linux46
-rw-r--r--rubbos/app/tomcat-connectors-1.2.32-src/native/jni/Makefile.netware266
-rw-r--r--rubbos/app/tomcat-connectors-1.2.32-src/native/jni/Makefile.solaris45
-rw-r--r--rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.abin0 -> 365752 bytes
-rw-r--r--rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.c495
-rw-r--r--rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.exp7
-rw-r--r--rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.h61
-rw-r--r--rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.la35
-rw-r--r--rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.lo12
-rw-r--r--rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.obin0 -> 15784 bytes
-rwxr-xr-xrubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.sobin0 -> 251337 bytes
-rw-r--r--rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jni_connect.dsp151
19 files changed, 1278 insertions, 0 deletions
diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/.libs/jk_jnicb.a b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/.libs/jk_jnicb.a
new file mode 100644
index 00000000..7a91d73f
--- /dev/null
+++ b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/.libs/jk_jnicb.a
Binary files differ
diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/.libs/jk_jnicb.la b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/.libs/jk_jnicb.la
new file mode 100644
index 00000000..32781996
--- /dev/null
+++ b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/.libs/jk_jnicb.la
@@ -0,0 +1,35 @@
+# jk_jnicb.la - a libtool library file
+# Generated by ltmain.sh - GNU libtool 1.5.26 (1.1220.2.493 2008/02/01 16:58:18)
+#
+# Please DO NOT delete this file!
+# It is necessary for linking the library.
+
+# The name that we can dlopen(3).
+dlname='jk_jnicb.so'
+
+# Names of this library.
+library_names='jk_jnicb.so jk_jnicb.so jk_jnicb.so'
+
+# The name of the static archive.
+old_library='jk_jnicb.a'
+
+# Libraries that this one depends upon.
+dependency_libs=''
+
+# Version information for jk_jnicb.
+current=0
+age=0
+revision=0
+
+# Is this an already installed library?
+installed=yes
+
+# Should we warn about portability when linking against -modules?
+shouldnotlink=yes
+
+# Files to dlopen/dlpreopen
+dlopen=''
+dlpreopen=''
+
+# Directory that this library needs to be installed in:
+libdir='/bottlenecks/rubbos/app/tomcat-connectors-1.2.32-src/native/jni'
diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/.libs/jk_jnicb.lai b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/.libs/jk_jnicb.lai
new file mode 100644
index 00000000..32781996
--- /dev/null
+++ b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/.libs/jk_jnicb.lai
@@ -0,0 +1,35 @@
+# jk_jnicb.la - a libtool library file
+# Generated by ltmain.sh - GNU libtool 1.5.26 (1.1220.2.493 2008/02/01 16:58:18)
+#
+# Please DO NOT delete this file!
+# It is necessary for linking the library.
+
+# The name that we can dlopen(3).
+dlname='jk_jnicb.so'
+
+# Names of this library.
+library_names='jk_jnicb.so jk_jnicb.so jk_jnicb.so'
+
+# The name of the static archive.
+old_library='jk_jnicb.a'
+
+# Libraries that this one depends upon.
+dependency_libs=''
+
+# Version information for jk_jnicb.
+current=0
+age=0
+revision=0
+
+# Is this an already installed library?
+installed=yes
+
+# Should we warn about portability when linking against -modules?
+shouldnotlink=yes
+
+# Files to dlopen/dlpreopen
+dlopen=''
+dlpreopen=''
+
+# Directory that this library needs to be installed in:
+libdir='/bottlenecks/rubbos/app/tomcat-connectors-1.2.32-src/native/jni'
diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/.libs/jk_jnicb.o b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/.libs/jk_jnicb.o
new file mode 100644
index 00000000..857e8997
--- /dev/null
+++ b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/.libs/jk_jnicb.o
Binary files differ
diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/.libs/jk_jnicb.so b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/.libs/jk_jnicb.so
new file mode 100755
index 00000000..8c6b89e9
--- /dev/null
+++ b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/.libs/jk_jnicb.so
Binary files differ
diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/Makefile b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/Makefile
new file mode 100644
index 00000000..892bac18
--- /dev/null
+++ b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/Makefile
@@ -0,0 +1,45 @@
+# 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.
+
+OEXT=.lo
+include /bottlenecks/rubbos/app/apache2/build/config_vars.mk
+
+JK=../common/
+COMMON_OBJECTS=${JK}jk_map${OEXT} ${JK}jk_util${OEXT} ${JK}jk_pool${OEXT}
+JNI_OBJECTS=jk_jnicb${OEXT} ${COMMON_OBJECTS}
+
+
+JAVA_INCL=-I /bottlenecks/rubbos/app/jdk1.6.0_27/include -I /bottlenecks/rubbos/app/jdk1.6.0_27/include/linux -I../common
+CFLAGS=-I/bottlenecks/rubbos/app/apache2/include -DHAVE_CONFIG_H -DHAVE_JNI ${JAVA_INCL} -D_REENTRANT
+
+include ../scripts/build/rules.mk
+
+all: Makefile jni_connect.so
+
+Makefile: Makefile.in
+ echo Regenerating Makefile
+ ( cd ..; ./config.status )
+
+jk_jnicb.la: ${JNI_OBJECTS}
+ $(LIBTOOL) --mode=link $(COMPILE) -module -o $@ -rpath `pwd` -g -O2 -avoid-version ${JNI_OBJECTS}
+
+jni_connect.so: jk_jnicb.la
+ $(LIBTOOL) --mode=install cp $< `pwd`/jni_connect.so
+
+install:
+
+clean:
+ rm -f *.o *.lo *.a *.la *.so *.so.* *.slo
+ rm -rf .libs
diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/Makefile.in b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/Makefile.in
new file mode 100644
index 00000000..7d2a675c
--- /dev/null
+++ b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/Makefile.in
@@ -0,0 +1,45 @@
+# 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.
+
+OEXT=.lo
+include @APACHE_CONFIG_VARS@
+
+JK=../common/
+COMMON_OBJECTS=${JK}jk_map${OEXT} ${JK}jk_util${OEXT} ${JK}jk_pool${OEXT}
+JNI_OBJECTS=jk_jnicb${OEXT} ${COMMON_OBJECTS}
+
+
+JAVA_INCL=-I @JAVA_HOME@/include -I @JAVA_HOME@/include/@OS@ -I../common
+CFLAGS=@apache_include@ @CFLAGS@ ${JAVA_INCL} -D_REENTRANT
+
+include ../scripts/build/rules.mk
+
+all: Makefile jni_connect.so
+
+Makefile: Makefile.in
+ echo Regenerating Makefile
+ ( cd ..; ./config.status )
+
+jk_jnicb.la: ${JNI_OBJECTS}
+ $(LIBTOOL) --mode=link $(COMPILE) -module -o $@ -rpath `pwd` -g -O2 -avoid-version ${JNI_OBJECTS}
+
+jni_connect.so: jk_jnicb.la
+ $(LIBTOOL) --mode=install cp $< `pwd`/jni_connect.so
+
+install:
+
+clean:
+ rm -f *.o *.lo *.a *.la *.so *.so.* *.slo
+ rm -rf .libs
diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/Makefile.linux b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/Makefile.linux
new file mode 100644
index 00000000..6b2174b8
--- /dev/null
+++ b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/Makefile.linux
@@ -0,0 +1,46 @@
+# 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.
+
+# Defines for example NSAPI programs running under SOLARIS
+
+CC_CMD=gcc -D_REENTRANT
+LD_SHAREDCMD=ld -G
+
+all:
+
+prepare:
+
+OS_TYPE=linux
+INCLUDEDIR=../common
+JAVA_INCLUDE=$(JAVA_HOME)/include
+
+JK_OBJS = ../common/jk_map.o ../common/jk_util.o ../common/jk_pool.o jk_jnicb.o
+
+INCLUDE_FLAGS=-I$(INCLUDEDIR) -I$(JAVA_INCLUDE) -I$(JAVA_INCLUDE)/$(OS_TYPE)
+COMMON_DEFS=
+
+
+all: jni_connect.so
+
+
+jni_connect.so: $(JK_OBJS)
+# $(MAKE) prepare
+ $(LD_SHAREDCMD) $(JK_OBJS) -o jni_connect.so $(EXTRA_LDDEFINES)
+
+.c.o:
+ $(CC_CMD) $(COMMON_DEFS) $(INCLUDE_FLAGS) -c $<
+
+clean:
+ rm $(JK_OBJS)
diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/Makefile.netware b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/Makefile.netware
new file mode 100644
index 00000000..2be42237
--- /dev/null
+++ b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/Makefile.netware
@@ -0,0 +1,266 @@
+#
+# 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.
+#
+
+#
+# Makefile for jk_nsapi_plugin (NetWare version - gnu make)
+# created by Guenter Knauf <fuankg@apache.org>
+#
+
+# Edit the path below to point to the base of your Netscape includes.
+ifndef NS_HOME
+NS_HOME = c:/projects/sdks/netscape
+endif
+# Edit the path below to point to the base of your NetWare Java SDK.
+ifndef NW_JDK
+NW_JDK = c:/projects/sdks/java-nw
+endif
+# Edit the path below to point to the base of your Novell NDK.
+ifndef NDKBASE
+NDKBASE = c:/novell
+endif
+
+ifndef INSTDIR
+INSTDIR = s:/sys/novonyx/modules
+endif
+
+# Edit the vars below to change NLM target settings.
+TARGET = jni_conn
+VERSION = $(JK_VERSION)
+COPYR = Licensed under the Apache License, Version 2.0
+DESCR = JNI natives for Tomcat $(JK_VERSION_STR)
+MTSAFE = NO
+STACK = 64000
+#SCREEN = System Console
+MODULES = nsapi
+EXPORTS = \
+ Java_org_apache_tomcat_modules_server_JNIConnectionHandler_write \
+ Java_org_apache_tomcat_modules_server_JNIConnectionHandler_startReasponse \
+ Java_org_apache_tomcat_modules_server_JNIConnectionHandler_readHeaders \
+ Java_org_apache_tomcat_modules_server_JNIConnectionHandler_readEnvironment \
+ Java_org_apache_tomcat_modules_server_JNIConnectionHandler_read \
+ Java_org_apache_tomcat_modules_server_JNIConnectionHandler_getNumberOfHeaders
+
+#IMPORTS = __nsapi30_table
+
+# Edit the var below to point to your lib architecture.
+ifndef LIBARCH
+LIBARCH = CLIB
+# LIBARCH = LIBC
+endif
+
+# must be equal to DEBUG or NDEBUG
+DB = NDEBUG
+# DB = DEBUG
+# Optimization: -O<n> or debugging: -g
+ifeq ($(DB),NDEBUG)
+ OPT = -O2
+ OBJDIR = release
+else
+ OPT = -g
+ OBJDIR = debug
+endif
+
+# Include the version info retrieved from jk_version.h
+-include $(OBJDIR)/version.inc
+
+# The following line defines your compiler.
+ifdef METROWERKS
+ CC = mwccnlm
+else
+ CC = gcc
+endif
+# RM = rm -f
+# CP = cp -fv
+# if you want to mark the target as MTSAFE you will need a tool for
+# generating the xdc data for the linker; here's a minimal tool:
+# http://www.gknw.net/development/prgtools/mkxdc.zip
+MPKXDC = mkxdc
+AWK = awk
+
+# Global flags for all compilers
+CFLAGS = $(OPT) -D$(DB) -DNETWARE -DXP_NETWARE -nostdinc
+
+ifeq ($(CC),mwccnlm)
+LD = mwldnlm
+LDFLAGS = -nostdlib $(OBJS) $(PRELUDE) $(LDLIBS) -o $@ -commandfile
+CFLAGS += -gccinc -inline off -opt nointrinsics
+#CFLAGS += -w on
+ifeq ($(LIBARCH),LIBC)
+ PRELUDE = $(SDK_LIBC)/imports/libcpre.o
+ CFLAGS += -align 4 -inst mmx -proc 686
+# CFLAGS += -D__ANSIC__
+else
+ PRELUDE = "$(METROWERKS)/Novell Support/libraries/runtime/prelude.obj"
+ LDLIBS = "$(METROWERKS)/Novell Support/libraries/runtime/mwcrtl.lib"
+# CFLAGS += -include "$(METROWERKS)/Novell Support/headers/nlm_prefix.h"
+ CFLAGS += -align 1 -proc 586
+endif
+else
+LD = nlmconv
+LDFLAGS = -T
+CFLAGS += -fno-builtin -fpack-struct -fpcc-struct-return
+CFLAGS += -Wall -Wno-main # -pedantic
+ifeq ($(LIBARCH),LIBC)
+ PRELUDE = $(SDK_LIBC)/imports/libcpre.gcc.o
+# CFLAGS += -D__ANSIC__
+else
+ PRELUDE = $(SDK_CLIB)/imports/clibpre.gcc.o
+ CFLAGS += -include $(NDKBASE)/nlmconv/genlm.h
+endif
+endif
+
+NDK_ROOT = $(NDKBASE)/ndk
+SDK_CLIB = $(NDK_ROOT)/nwsdk
+SDK_LIBC = $(NDK_ROOT)/libc
+JKCOMMON = ../common
+
+INCLUDES = -I$(NS_HOME)/include -I$(NS_HOME)/include/base
+INCLUDES += -I$(JKCOMMON) -I$(NW_JDK)/include -I$(NW_JDK)/include/netware
+
+ifeq ($(LIBARCH),LIBC)
+ INCLUDES += -I$(SDK_LIBC)/include
+ INCLUDES += -I$(SDK_LIBC)/include/winsock
+else
+ INCLUDES += -I$(SDK_CLIB)/include/nlm
+ # INCLUDES += -I$(NDKBASE)/ws295sdk/include
+ CFLAGS += -DNETDB_USE_INTERNET
+ CFLAGS += -DNO_GETTIMEOFDAY
+ CFLAGS += -DJK_PREFORK
+endif
+CFLAGS += $(INCLUDES)
+
+ifeq ($(MTSAFE),YES)
+ XDCDATA = $(OBJDIR)/$(TARGET).xdc
+endif
+
+ifeq ($(findstring linux,$(OSTYPE)),linux)
+DL = '
+#-include $(NDKBASE)/nlmconv/ncpfs.inc
+endif
+
+OBJS = \
+ $(OBJDIR)/jk_jnicb.o \
+ $(OBJDIR)/jk_nwmain.o \
+ $(OBJDIR)/jk_map.o \
+ $(OBJDIR)/jk_pool.o \
+ $(OBJDIR)/jk_util.o \
+ $(OBJDIR)/ap_snprintf.o
+
+vpath %.c . $(JKCOMMON)
+
+
+all: $(OBJDIR) $(OBJDIR)/version.inc $(OBJDIR)/$(TARGET).nlm
+
+$(OBJDIR)/%.o: %.c
+ @echo Compiling $<
+ @$(CC) $(CFLAGS) -c $< -o $@
+
+$(OBJDIR)/version.inc: $(JKCOMMON)/jk_version.h $(OBJDIR)
+ @echo Creating $@
+ @$(AWK) -f ../../support/get_ver.awk $< > $@
+
+dist: all
+ -$(RM) $(OBJDIR)/*.o $(OBJDIR)/$(TARGET).map $(OBJDIR)/$(TARGET).ncv
+ -$(RM) $(OBJDIR)/$(TARGET).def $(OBJDIR)/version.inc $(XDCDATA)
+# -$(CP) ../changes.txt $(OBJDIR)/
+
+install: all
+ @[ -d $(INSTDIR) ] || mkdir $(INSTDIR)
+ @$(CP) $(TARGET).nlm $(INSTDIR)
+
+clean:
+ -$(RM) -r $(OBJDIR)
+
+$(OBJDIR):
+ @mkdir $(OBJDIR)
+
+$(OBJDIR)/$(TARGET).nlm: $(OBJS) $(OBJDIR)/$(TARGET).def $(XDCDATA)
+ @echo Linking $@
+ @-$(RM) $@
+ @$(LD) $(LDFLAGS) $(OBJDIR)/$(TARGET).def
+
+$(OBJDIR)/%.xdc: Makefile.netware
+ @echo Creating $@
+ @$(MPKXDC) $(XDCOPT) $@
+
+$(OBJDIR)/%.def: Makefile.netware
+ @echo $(DL)# DEF file for linking with $(LD)$(DL) > $@
+ @echo $(DL)# Do not edit this file - it is created by make!$(DL) >> $@
+ @echo $(DL)# All your changes will be lost!!$(DL) >> $@
+ @echo $(DL)#$(DL) >> $@
+ @echo $(DL)copyright "$(COPYR)"$(DL) >> $@
+ @echo $(DL)description "$(DESCR)"$(DL) >> $@
+ @echo $(DL)version $(VERSION)$(DL) >> $@
+ifdef NLMTYPE
+ @echo $(DL)type $(NLMTYPE)$(DL) >> $@
+endif
+ifdef STACK
+ @echo $(DL)stack $(STACK)$(DL) >> $@
+endif
+ifdef SCREEN
+ @echo $(DL)screenname "$(SCREEN)"$(DL) >> $@
+else
+ @echo $(DL)screenname "DEFAULT"$(DL) >> $@
+endif
+ifeq ($(DB),DEBUG)
+ @echo $(DL)debug$(DL) >> $@
+endif
+ @echo $(DL)threadname "$(TARGET)"$(DL) >> $@
+ifdef XDCDATA
+ @echo $(DL)xdcdata $(XDCDATA)$(DL) >> $@
+endif
+ifeq ($(LIBARCH),CLIB)
+ @echo $(DL)start _Prelude$(DL) >> $@
+ @echo $(DL)exit _Stop$(DL) >> $@
+ @echo $(DL)import @$(NDK_ROOT)/nwsdk/imports/clib.imp$(DL) >> $@
+ @echo $(DL)import @$(NDK_ROOT)/nwsdk/imports/threads.imp$(DL) >> $@
+ @echo $(DL)import @$(NDK_ROOT)/nwsdk/imports/nlmlib.imp$(DL) >> $@
+ @echo $(DL)import @$(NDK_ROOT)/nwsdk/imports/socklib.imp$(DL) >> $@
+ @echo $(DL)module clib$(DL) >> $@
+else
+ifeq ($(LD),nlmconv)
+ @echo $(DL)flag_on 64$(DL) >> $@
+else
+ @echo $(DL)autounload$(DL) >> $@
+endif
+ @echo $(DL)pseudopreemption$(DL) >> $@
+ @echo $(DL)start _LibCPrelude$(DL) >> $@
+ @echo $(DL)exit _LibCPostlude$(DL) >> $@
+ @echo $(DL)check _LibCCheckUnload$(DL) >> $@
+ @echo $(DL)import @$(NDK_ROOT)/libc/imports/libc.imp$(DL) >> $@
+ @echo $(DL)import @$(NDK_ROOT)/libc/imports/netware.imp$(DL) >> $@
+ @echo $(DL)module libc$(DL) >> $@
+endif
+ifdef MODULES
+ @echo $(DL)module $(MODULES)$(DL) >> $@
+endif
+ifdef EXPORTS
+ @echo $(DL)export $(EXPORTS)$(DL) >> $@
+endif
+ifdef IMPORTS
+ @echo $(DL)import $(IMPORTS)$(DL) >> $@
+endif
+ifeq ($(LD),nlmconv)
+ @echo $(DL)input $(OBJS)$(DL) >> $@
+ @echo $(DL)input $(PRELUDE)$(DL) >> $@
+ifdef LDLIBS
+ @echo $(DL)input $(LDLIBS)$(DL) >> $@
+endif
+ @echo $(DL)output $*.nlm$(DL) >> $@
+endif
+
+
diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/Makefile.solaris b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/Makefile.solaris
new file mode 100644
index 00000000..2c7dcb09
--- /dev/null
+++ b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/Makefile.solaris
@@ -0,0 +1,45 @@
+# 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.
+
+# Defines for example NSAPI programs running under SOLARIS
+
+CC_CMD=gcc -DSOLARIS -D_REENTRANT
+LD_SHAREDCMD=ld -G
+
+all:
+prepare:
+
+OS_TYPE=solaris
+INCLUDEDIR=../common
+JAVA_INCLUDE=$(JAVA_HOME)/include
+
+JK_OBJS = ../common/jk_map.o ../common/jk_util.o ../common/jk_pool.o jk_jnicb.o
+
+INCLUDE_FLAGS=-I$(INCLUDEDIR) -I$(JAVA_INCLUDE) -I$(JAVA_INCLUDE)/$(OS_TYPE)
+COMMON_DEFS=
+
+
+all: jni_connect.so
+
+
+jni_connect.so: $(JK_OBJS)
+ $(MAKE) prepare
+ $(LD_SHAREDCMD) $(JK_OBJS) -o jni_connect.so $(EXTRA_LDDEFINES)
+
+.c.o:
+ $(CC_CMD) $(COMMON_DEFS) $(INCLUDE_FLAGS) -c $<
+
+clean:
+ rm $(JK_OBJS)
diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.a b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.a
new file mode 100644
index 00000000..44765de7
--- /dev/null
+++ b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.a
Binary files differ
diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.c b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.c
new file mode 100644
index 00000000..9a40c95f
--- /dev/null
+++ b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.c
@@ -0,0 +1,495 @@
+/*
+ * 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.
+ */
+
+/***************************************************************************
+ * Description: JNI callbacks implementation for the JNI in process adapter*
+ * Author: Gal Shachor <shachor@il.ibm.com> *
+ * Version: $Revision: 466585 $ *
+ ***************************************************************************/
+
+#include "jk_jnicb.h"
+#include "jk_service.h"
+#include "jk_util.h"
+#include "jk_pool.h"
+
+/*
+ * Class: org_apache_tomcat_modules_server_JNIConnectionHandler
+ * Method: getNumberOfHeaders
+ * Signature: (JJ)I
+ */
+JNIEXPORT jint JNICALL
+ Java_org_apache_tomcat_modules_server_JNIConnectionHandler_getNumberOfHeaders
+ (JNIEnv * env, jobject o, jlong s, jlong l)
+{
+ /* [V] Convert indirectly from jlong -> int -> pointer to shut up gcc */
+ /* I hope it's okay on other compilers and/or machines... */
+ jk_ws_service_t *ps = (jk_ws_service_t *)(int)s;
+ jk_logger_t *pl = (jk_logger_t *)(int)l;
+
+ jk_log(pl, JK_LOG_DEBUG,
+ "Into JNIConnectionHandler::getNumberOfHeaders\n");
+
+ if (!ps) {
+ jk_log(pl, JK_LOG_ERROR,
+ "In JNIConnectionHandler::getNumberOfHeaders, NULL ws service object\n");
+ /* [V] JNIConnectionHandler doesn't handle this */
+ return -1;
+ }
+
+ jk_log(pl, JK_LOG_DEBUG,
+ "Done JNIConnectionHandler::getNumberOfHeaders, found %d headers\n",
+ ps->num_headers);
+ return (jint) ps->num_headers;
+}
+
+/*
+ * Class: org_apache_tomcat_modules_server_JNIConnectionHandler
+ * Method: read
+ * Signature: (JJ[BII)I
+ */
+JNIEXPORT jint JNICALL
+ Java_org_apache_tomcat_modules_server_JNIConnectionHandler_read
+ (JNIEnv * env, jobject o, jlong s, jlong l, jbyteArray buf, jint from,
+ jint cnt)
+{
+ jk_ws_service_t *ps = (jk_ws_service_t *)(int)s;
+ jk_logger_t *pl = (jk_logger_t *)(int)l;
+ jint rc = -1;
+ jboolean iscommit;
+ jbyte *nbuf;
+ unsigned nfrom = (unsigned)from;
+ unsigned ncnt = (unsigned)cnt;
+ unsigned acc = 0;
+
+ jk_log(pl, JK_LOG_DEBUG, "Into JNIConnectionHandler::read\n");
+
+ if (!ps) {
+ jk_log(pl, JK_LOG_ERROR,
+ "In JNIConnectionHandler::read, NULL ws service object\n");
+ return -1;
+ }
+
+ nbuf = (*env)->GetByteArrayElements(env, buf, &iscommit);
+
+ if (!nbuf) {
+ jk_log(pl, JK_LOG_ERROR,
+ "In JNIConnectionHandler::read, GetByteArrayElements error\n");
+ return -1;
+ }
+
+ if (!ps->read(ps, nbuf + nfrom, ncnt, &acc)) {
+ jk_log(pl, JK_LOG_ERROR,
+ "In JNIConnectionHandler::read, failed to read from web server\n");
+ }
+ else {
+ rc = (jint) acc;
+ }
+
+ (*env)->ReleaseByteArrayElements(env, buf, nbuf, 0);
+
+ jk_log(pl, JK_LOG_DEBUG, "Done JNIConnectionHandler::read\n");
+ return rc;
+}
+
+/*
+ * Class: org_apache_tomcat_modules_server_JNIConnectionHandler
+ * Method: readEnvironment
+ * Signature: (JJ[Ljava/lang/String;)I
+ */
+JNIEXPORT jint JNICALL
+ Java_org_apache_tomcat_modules_server_JNIConnectionHandler_readEnvironment
+ (JNIEnv * env, jobject o, jlong s, jlong l, jobjectArray envbuf)
+{
+ jk_ws_service_t *ps = (jk_ws_service_t *)(int)s;
+ jk_logger_t *pl = (jk_logger_t *)(int)l;
+ char port[10];
+
+ jk_log(pl, JK_LOG_DEBUG,
+ "Into JNIConnectionHandler::readEnvironment. Environment follows --->\n");
+
+ if (!ps) {
+ jk_log(pl, JK_LOG_ERROR,
+ "In JNIConnectionHandler::readEnvironment, NULL ws service object\n");
+ return JK_FALSE;
+ }
+
+ sprintf(port, "%d", ps->server_port);
+
+ if (ps->method) {
+ (*env)->SetObjectArrayElement(env,
+ envbuf,
+ 0,
+ (*env)->NewStringUTF(env, ps->method));
+ jk_log(pl, JK_LOG_DEBUG, "---> method: %s\n", ps->method);
+ }
+ if (ps->req_uri) {
+ (*env)->SetObjectArrayElement(env,
+ envbuf,
+ 1,
+ (*env)->NewStringUTF(env, ps->req_uri));
+ jk_log(pl, JK_LOG_DEBUG, "---> req_uri: %s\n", ps->req_uri);
+ }
+ if (ps->query_string) {
+ (*env)->SetObjectArrayElement(env,
+ envbuf,
+ 2,
+ (*env)->NewStringUTF(env,
+ ps->query_string));
+ jk_log(pl, JK_LOG_DEBUG, "---> query_string: %s\n", ps->query_string);
+ }
+ if (ps->remote_addr) {
+ (*env)->SetObjectArrayElement(env,
+ envbuf,
+ 3,
+ (*env)->NewStringUTF(env,
+ ps->remote_addr));
+ jk_log(pl, JK_LOG_DEBUG, "---> remote_addr: %s\n", ps->remote_addr);
+ }
+ if (ps->remote_host) {
+ (*env)->SetObjectArrayElement(env,
+ envbuf,
+ 4,
+ (*env)->NewStringUTF(env,
+ ps->remote_host));
+ jk_log(pl, JK_LOG_DEBUG, "---> remote_host: %s\n", ps->remote_host);
+ }
+ if (ps->server_name) {
+ (*env)->SetObjectArrayElement(env,
+ envbuf,
+ 5,
+ (*env)->NewStringUTF(env,
+ ps->server_name));
+ jk_log(pl, JK_LOG_DEBUG, "---> server_name: %s\n", ps->server_name);
+ }
+
+ (*env)->SetObjectArrayElement(env,
+ envbuf, 6, (*env)->NewStringUTF(env, port));
+ jk_log(pl, JK_LOG_DEBUG, "---> server_port: %s\n", port);
+
+ if (ps->auth_type) {
+ (*env)->SetObjectArrayElement(env,
+ envbuf,
+ 7,
+ (*env)->NewStringUTF(env,
+ ps->auth_type));
+ jk_log(pl, JK_LOG_DEBUG, "---> auth_type: %s\n", ps->auth_type);
+ }
+ if (ps->remote_user) {
+ (*env)->SetObjectArrayElement(env,
+ envbuf,
+ 8,
+ (*env)->NewStringUTF(env,
+ ps->remote_user));
+ jk_log(pl, JK_LOG_DEBUG, "---> remote_user: %s\n", ps->remote_user);
+ }
+ if (ps->is_ssl) {
+ (*env)->SetObjectArrayElement(env,
+ envbuf,
+ 9, (*env)->NewStringUTF(env, "https"));
+ }
+ else {
+ (*env)->SetObjectArrayElement(env,
+ envbuf,
+ 9, (*env)->NewStringUTF(env, "http"));
+ }
+ jk_log(pl, JK_LOG_DEBUG, "---> is_ssl: %s\n", ps->is_ssl ? "yes" : "no");
+
+ if (ps->protocol) {
+ (*env)->SetObjectArrayElement(env,
+ envbuf,
+ 10,
+ (*env)->NewStringUTF(env,
+ ps->protocol));
+ jk_log(pl, JK_LOG_DEBUG, "---> protocol: %s\n", ps->protocol);
+ }
+ if (ps->server_software) {
+ (*env)->SetObjectArrayElement(env,
+ envbuf,
+ 11,
+ (*env)->NewStringUTF(env,
+ ps->
+ server_software));
+ jk_log(pl, JK_LOG_DEBUG, "---> server_software: %s\n",
+ ps->server_software);
+ }
+ if (ps->is_ssl) {
+ if (ps->ssl_cert) {
+ (*env)->SetObjectArrayElement(env,
+ envbuf,
+ 12,
+ (*env)->NewStringUTF(env,
+ ps->ssl_cert));
+ jk_log(pl, JK_LOG_DEBUG, "---> ssl_cert: %s\n", ps->ssl_cert);
+ }
+
+ if (ps->ssl_cipher) {
+ (*env)->SetObjectArrayElement(env,
+ envbuf,
+ 13,
+ (*env)->NewStringUTF(env,
+ ps->
+ ssl_cipher));
+ jk_log(pl, JK_LOG_DEBUG, "---> ssl_cipher: %s\n", ps->ssl_cipher);
+ }
+
+ if (ps->ssl_session) {
+ (*env)->SetObjectArrayElement(env,
+ envbuf,
+ 14,
+ (*env)->NewStringUTF(env,
+ ps->
+ ssl_session));
+ jk_log(pl, JK_LOG_DEBUG, "---> ssl_session: %s\n",
+ ps->ssl_session);
+ }
+ }
+
+ jk_log(pl, JK_LOG_DEBUG, "Done JNIConnectionHandler::readEnvironment\n");
+
+
+ return JK_TRUE;
+}
+
+/*
+ * Class: org_apache_tomcat_modules_server_JNIConnectionHandler
+ * Method: readHeaders
+ * Signature: (JJ[Ljava/lang/String;[Ljava/lang/String;)I
+ */
+JNIEXPORT jint JNICALL
+ Java_org_apache_tomcat_modules_server_JNIConnectionHandler_readHeaders
+ (JNIEnv * env, jobject o, jlong s, jlong l, jobjectArray hnames,
+ jobjectArray hvalues)
+{
+ jk_ws_service_t *ps = (jk_ws_service_t *)(int)s;
+ jk_logger_t *pl = (jk_logger_t *)(int)l;
+ unsigned i;
+
+ jk_log(pl, JK_LOG_DEBUG, "Into JNIConnectionHandler::readHeaders\n");
+
+ if (!ps) {
+ jk_log(pl, JK_LOG_ERROR,
+ "In JNIConnectionHandler::readHeaders, NULL ws service object\n");
+ return JK_FALSE;
+ }
+
+ jk_log(pl, JK_LOG_DEBUG,
+ "In JNIConnectionHandler::readHeaders, %d headers follow --->\n",
+ ps->num_headers);
+
+ for (i = 0; i < ps->num_headers; i++) {
+ (*env)->SetObjectArrayElement(env,
+ hnames,
+ i,
+ (*env)->NewStringUTF(env,
+ ps->
+ headers_names[i]));
+ (*env)->SetObjectArrayElement(env, hvalues, i,
+ (*env)->NewStringUTF(env,
+ ps->
+ headers_values
+ [i]));
+ jk_log(pl, JK_LOG_DEBUG, "---> %s = %s\n", ps->headers_names[i],
+ ps->headers_values[i]);
+ }
+ jk_log(pl, JK_LOG_DEBUG, "Done JNIConnectionHandler::readHeaders\n");
+
+ return JK_TRUE;
+}
+
+/*
+ * Class: org_apache_tomcat_modules_server_JNIConnectionHandler
+ * Method: startReasponse
+ * Signature: (JJILjava/lang/String;[Ljava/lang/String;[Ljava/lang/String;I)I
+ */
+JNIEXPORT jint JNICALL
+ Java_org_apache_tomcat_modules_server_JNIConnectionHandler_startReasponse
+ (JNIEnv * env, jobject o, jlong s, jlong l,
+ jint sc, jstring msg, jobjectArray hnames, jobjectArray hvalues,
+ jint hcnt)
+{
+ jk_ws_service_t *ps = (jk_ws_service_t *)(int)s;
+ jk_logger_t *pl = (jk_logger_t *)(int)l;
+ const char *nmsg = NULL;
+ char **nhnames = NULL;
+ char **nhvalues = NULL;
+ jstring *shnames = NULL;
+ jstring *shvalues = NULL;
+ int i = 0;
+ int ok = JK_TRUE;
+
+ jk_log(pl, JK_LOG_DEBUG, "Into JNIConnectionHandler::startReasponse\n");
+
+ if (!ps) {
+ jk_log(pl, JK_LOG_ERROR,
+ "In JNIConnectionHandler::startReasponse, NULL ws service object\n");
+ return JK_FALSE;
+ }
+
+ jk_log(pl, JK_LOG_DEBUG,
+ "In JNIConnectionHandler::startReasponse, %d headers follow --->\n",
+ hcnt);
+
+ if (hcnt) {
+ ok = JK_FALSE;
+
+ nhnames = (char **)jk_pool_alloc(ps->pool, hcnt * sizeof(char *));
+ nhvalues = (char **)jk_pool_alloc(ps->pool, hcnt * sizeof(char *));
+ shnames = (jstring *) jk_pool_alloc(ps->pool, hcnt * sizeof(jstring));
+ shvalues =
+ (jstring *) jk_pool_alloc(ps->pool, hcnt * sizeof(jstring));
+
+ if (nhvalues && nhnames && shnames && shnames) {
+ for (; i < hcnt; i++) {
+ jboolean iscommit;
+
+ shvalues[i] = shnames[i] = NULL;
+ nhnames[i] = nhvalues[i] = NULL;
+
+ shnames[i] = (*env)->GetObjectArrayElement(env, hnames, i);
+ shvalues[i] = (*env)->GetObjectArrayElement(env, hvalues, i);
+
+ if (!shvalues[i] || !shnames[i]) {
+ jk_log(pl, JK_LOG_ERROR,
+ "In JNIConnectionHandler::startReasponse, GetObjectArrayElement error\n");
+ break;
+ }
+
+ nhnames[i] =
+ (char *)(*env)->GetStringUTFChars(env, shnames[i],
+ &iscommit);
+ nhvalues[i] =
+ (char *)(*env)->GetStringUTFChars(env, shvalues[i],
+ &iscommit);
+
+ if (!nhvalues[i] || !nhnames[i]) {
+ jk_log(pl, JK_LOG_ERROR,
+ "In JNIConnectionHandler::startReasponse, GetStringUTFChars error\n");
+ break;
+ }
+
+ jk_log(pl, JK_LOG_DEBUG, "---> %s=%s\n", nhnames[i],
+ nhvalues[i]);
+ }
+ if (i == hcnt) {
+ ok = JK_TRUE;
+ jk_log(pl, JK_LOG_DEBUG,
+ "In JNIConnectionHandler::startReasponse. ----- End headers.\n",
+ hcnt);
+ }
+ }
+ else {
+ jk_log(pl, JK_LOG_ERROR,
+ "In JNIConnectionHandler::startReasponse, memory allocation error\n");
+ }
+ }
+
+ if (msg && ok) {
+ jboolean iscommit;
+ nmsg = (*env)->GetStringUTFChars(env, msg, &iscommit);
+ if (!nmsg) {
+ ok = JK_FALSE;
+ }
+ }
+
+ if (ok) {
+ if (!ps->
+ start_response(ps, sc, nmsg, (const char **)nhnames,
+ (const char **)nhvalues, hcnt)) {
+ ok = JK_FALSE;
+ jk_log(pl, JK_LOG_ERROR,
+ "In JNIConnectionHandler::startReasponse, servers startReasponse failed\n");
+ }
+ }
+
+ if (nmsg) {
+ (*env)->ReleaseStringUTFChars(env, msg, nmsg);
+ }
+
+ if (i < hcnt) {
+ i++;
+ }
+
+ if (nhvalues) {
+ int j;
+
+ for (j = 0; j < i; j++) {
+ if (nhvalues[j]) {
+ (*env)->ReleaseStringUTFChars(env, shvalues[j], nhvalues[j]);
+ }
+ }
+ }
+
+ if (nhnames) {
+ int j;
+
+ for (j = 0; j < i; j++) {
+ if (nhnames[j]) {
+ (*env)->ReleaseStringUTFChars(env, shnames[j], nhnames[j]);
+ }
+ }
+ }
+ jk_log(pl, JK_LOG_DEBUG, "Done JNIConnectionHandler::startReasponse.\n");
+
+ return ok;
+}
+
+/*
+ * Class: org_apache_tomcat_modules_server_JNIConnectionHandler
+ * Method: write
+ * Signature: (JJ[BII)I
+ */
+JNIEXPORT jint JNICALL
+ Java_org_apache_tomcat_modules_server_JNIConnectionHandler_write
+ (JNIEnv * env, jobject o, jlong s, jlong l, jbyteArray buf, jint from,
+ jint cnt)
+{
+ jk_ws_service_t *ps = (jk_ws_service_t *)(int)s;
+ jk_logger_t *pl = (jk_logger_t *)(int)l;
+ jint rc = JK_FALSE;
+ jboolean iscommit;
+ jbyte *nbuf;
+ unsigned nfrom = (unsigned)from;
+ unsigned ncnt = (unsigned)cnt;
+
+ jk_log(pl, JK_LOG_DEBUG, "In JNIConnectionHandler::write\n");
+
+ if (!ps) {
+ jk_log(pl, JK_LOG_ERROR,
+ "In JNIConnectionHandler::write, NULL ws service object\n");
+ return JK_FALSE;
+ }
+
+ nbuf = (*env)->GetByteArrayElements(env, buf, &iscommit);
+
+ if (!nbuf) {
+ jk_log(pl, JK_LOG_ERROR,
+ "In JNIConnectionHandler::write, GetByteArrayElements error\n");
+ return JK_FALSE;
+ }
+
+ if (!ps->write(ps, nbuf + nfrom, ncnt)) {
+ jk_log(pl, JK_LOG_ERROR,
+ "In JNIConnectionHandler::write, failed to write to the web server\n");
+ }
+ else {
+ rc = (jint) JK_TRUE;
+ }
+
+ (*env)->ReleaseByteArrayElements(env, buf, nbuf, JNI_ABORT);
+
+ return rc;
+}
diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.exp b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.exp
new file mode 100644
index 00000000..fd709784
--- /dev/null
+++ b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.exp
@@ -0,0 +1,7 @@
+Java_org_apache_tomcat_modules_server_JNIConnectionHandler_getNumberOfHeaders,
+Java_org_apache_tomcat_modules_server_JNIConnectionHandler_read,
+Java_org_apache_tomcat_modules_server_JNIConnectionHandler_readEnvironment,
+Java_org_apache_tomcat_modules_server_JNIConnectionHandler_readHeaders,
+Java_org_apache_tomcat_modules_server_JNIConnectionHandler_startReasponse,
+Java_org_apache_tomcat_modules_server_JNIConnectionHandler_write
+
diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.h b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.h
new file mode 100644
index 00000000..2b2061df
--- /dev/null
+++ b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.h
@@ -0,0 +1,61 @@
+/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class org_apache_tomcat_modules_server_JNIConnectionHandler */
+
+#ifndef _Included_org_apache_tomcat_modules_server_JNIConnectionHandler
+#define _Included_org_apache_tomcat_modules_server_JNIConnectionHandler
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ * Class: org_apache_tomcat_modules_server_JNIConnectionHandler
+ * Method: getNumberOfHeaders
+ * Signature: (JJ)I
+ */
+JNIEXPORT jint JNICALL Java_org_apache_tomcat_modules_server_JNIConnectionHandler_getNumberOfHeaders
+ (JNIEnv *, jobject, jlong, jlong);
+
+/*
+ * Class: org_apache_tomcat_modules_server_JNIConnectionHandler
+ * Method: read
+ * Signature: (JJ[BII)I
+ */
+JNIEXPORT jint JNICALL Java_org_apache_tomcat_modules_server_JNIConnectionHandler_read
+ (JNIEnv *, jobject, jlong, jlong, jbyteArray, jint, jint);
+
+/*
+ * Class: org_apache_tomcat_modules_server_JNIConnectionHandler
+ * Method: readEnvironment
+ * Signature: (JJ[Ljava/lang/String;)I
+ */
+JNIEXPORT jint JNICALL Java_org_apache_tomcat_modules_server_JNIConnectionHandler_readEnvironment
+ (JNIEnv *, jobject, jlong, jlong, jobjectArray);
+
+/*
+ * Class: org_apache_tomcat_modules_server_JNIConnectionHandler
+ * Method: readHeaders
+ * Signature: (JJ[Ljava/lang/String;[Ljava/lang/String;)I
+ */
+JNIEXPORT jint JNICALL Java_org_apache_tomcat_modules_server_JNIConnectionHandler_readHeaders
+ (JNIEnv *, jobject, jlong, jlong, jobjectArray, jobjectArray);
+
+/*
+ * Class: org_apache_tomcat_modules_server_JNIConnectionHandler
+ * Method: startReasponse
+ * Signature: (JJILjava/lang/String;[Ljava/lang/String;[Ljava/lang/String;I)I
+ */
+JNIEXPORT jint JNICALL Java_org_apache_tomcat_modules_server_JNIConnectionHandler_startReasponse
+ (JNIEnv *, jobject, jlong, jlong, jint, jstring, jobjectArray, jobjectArray, jint);
+
+/*
+ * Class: org_apache_tomcat_modules_server_JNIConnectionHandler
+ * Method: write
+ * Signature: (JJ[BII)I
+ */
+JNIEXPORT jint JNICALL Java_org_apache_tomcat_modules_server_JNIConnectionHandler_write
+ (JNIEnv *, jobject, jlong, jlong, jbyteArray, jint, jint);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.la b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.la
new file mode 100644
index 00000000..32781996
--- /dev/null
+++ b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.la
@@ -0,0 +1,35 @@
+# jk_jnicb.la - a libtool library file
+# Generated by ltmain.sh - GNU libtool 1.5.26 (1.1220.2.493 2008/02/01 16:58:18)
+#
+# Please DO NOT delete this file!
+# It is necessary for linking the library.
+
+# The name that we can dlopen(3).
+dlname='jk_jnicb.so'
+
+# Names of this library.
+library_names='jk_jnicb.so jk_jnicb.so jk_jnicb.so'
+
+# The name of the static archive.
+old_library='jk_jnicb.a'
+
+# Libraries that this one depends upon.
+dependency_libs=''
+
+# Version information for jk_jnicb.
+current=0
+age=0
+revision=0
+
+# Is this an already installed library?
+installed=yes
+
+# Should we warn about portability when linking against -modules?
+shouldnotlink=yes
+
+# Files to dlopen/dlpreopen
+dlopen=''
+dlpreopen=''
+
+# Directory that this library needs to be installed in:
+libdir='/bottlenecks/rubbos/app/tomcat-connectors-1.2.32-src/native/jni'
diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.lo b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.lo
new file mode 100644
index 00000000..902ab51e
--- /dev/null
+++ b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.lo
@@ -0,0 +1,12 @@
+# jk_jnicb.lo - a libtool object file
+# Generated by ltmain.sh - GNU libtool 1.5.26 (1.1220.2.493 2008/02/01 16:58:18)
+#
+# Please DO NOT delete this file!
+# It is necessary for linking the library.
+
+# Name of the PIC object.
+pic_object='.libs/jk_jnicb.o'
+
+# Name of the non-PIC object.
+non_pic_object='jk_jnicb.o'
+
diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.o b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.o
new file mode 100644
index 00000000..92cc5fe5
--- /dev/null
+++ b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.o
Binary files differ
diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.so b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.so
new file mode 100755
index 00000000..8c6b89e9
--- /dev/null
+++ b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jk_jnicb.so
Binary files differ
diff --git a/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jni_connect.dsp b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jni_connect.dsp
new file mode 100644
index 00000000..0090c848
--- /dev/null
+++ b/rubbos/app/tomcat-connectors-1.2.32-src/native/jni/jni_connect.dsp
@@ -0,0 +1,151 @@
+# Microsoft Developer Studio Project File - Name="jni_connect" - Package Owner=<4>
+# Microsoft Developer Studio Generated Build File, Format Version 6.00
+# ** DO NOT EDIT **
+
+# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102
+
+CFG=jni_connect - Win32 Debug
+!MESSAGE This is not a valid makefile. To build this project using NMAKE,
+!MESSAGE use the Export Makefile command and run
+!MESSAGE
+!MESSAGE NMAKE /f "jni_connect.mak".
+!MESSAGE
+!MESSAGE You can specify a configuration when running NMAKE
+!MESSAGE by defining the macro CFG on the command line. For example:
+!MESSAGE
+!MESSAGE NMAKE /f "jni_connect.mak" CFG="jni_connect - Win32 Debug"
+!MESSAGE
+!MESSAGE Possible choices for configuration are:
+!MESSAGE
+!MESSAGE "jni_connect - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library")
+!MESSAGE "jni_connect - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library")
+!MESSAGE
+
+# Begin Project
+# PROP AllowPerConfigDependencies 0
+# PROP Scc_ProjName ""
+# PROP Scc_LocalPath ""
+CPP=cl.exe
+MTL=midl.exe
+RSC=rc.exe
+
+!IF "$(CFG)" == "jni_connect - Win32 Release"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 0
+# PROP BASE Output_Dir "Release"
+# PROP BASE Intermediate_Dir "Release"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 0
+# PROP Output_Dir "release"
+# PROP Intermediate_Dir "release"
+# PROP Ignore_Export_Lib 0
+# PROP Target_Dir ""
+# ADD BASE CPP /nologo /MD /W3 /GX /Zi /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "JNI_CONNECT_EXPORTS" /FD /c
+# ADD CPP /nologo /MD /W3 /GX /Zi /O2 /I "$(JAVA_HOME)\include" /I "$(JAVA_HOME)\include\win32" /I "..\common" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "JNI_CONNECT_EXPORTS" /Fd"Release/jni_connect_src" /FD /c
+# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
+# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
+# ADD BASE RSC /l 0x409 /d "NDEBUG"
+# ADD RSC /l 0x409 /d "NDEBUG"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LINK32=link.exe
+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386
+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /base:"0x6A6E0000" /subsystem:windows /dll /incremental:no /debug /machine:I386 /opt:ref
+
+!ELSEIF "$(CFG)" == "jni_connect - Win32 Debug"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 1
+# PROP BASE Output_Dir "Debug"
+# PROP BASE Intermediate_Dir "Debug"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 1
+# PROP Output_Dir "debug"
+# PROP Intermediate_Dir "debug"
+# PROP Ignore_Export_Lib 0
+# PROP Target_Dir ""
+# ADD BASE CPP /nologo /MDd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "JNI_CONNECT_EXPORTS" /FD /c
+# ADD CPP /nologo /MDd /W3 /Gm /GX /Zi /Od /I "$(JAVA_HOME)\include" /I "$(JAVA_HOME)\include\win32" /I "..\common" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "JNI_CONNECT_EXPORTS" /Fd"Debug/jni_connect_src" /FD /c
+# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
+# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
+# ADD BASE RSC /l 0x409 /d "_DEBUG"
+# ADD RSC /l 0x409 /d "_DEBUG"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LINK32=link.exe
+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /pdbtype:sept
+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /base:"0x6A6E0000" /subsystem:windows /dll /incremental:no /debug /machine:I386
+
+!ENDIF
+
+# Begin Target
+
+# Name "jni_connect - Win32 Release"
+# Name "jni_connect - Win32 Debug"
+# Begin Group "Source Files"
+
+# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
+# Begin Source File
+
+SOURCE=.\jk_jnicb.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\common\jk_map.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\common\jk_pool.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\common\jk_util.c
+# End Source File
+# End Group
+# Begin Group "Header Files"
+
+# PROP Default_Filter "h;hpp;hxx;hm;inl"
+# Begin Source File
+
+SOURCE=..\common\jk_ajp12_worker.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\common\jk_global.h
+# End Source File
+# Begin Source File
+
+SOURCE=.\jk_jnicb.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\common\jk_logger.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\common\jk_map.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\common\jk_pool.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\common\jk_service.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\common\jk_util.h
+# End Source File
+# End Group
+# Begin Group "Resource Files"
+
+# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
+# End Group
+# End Target
+# End Project