Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
461 changes: 348 additions & 113 deletions README.md

Large diffs are not rendered by default.

Empty file modified Rakefile
100755 → 100644
Empty file.
Binary file added build-static/linux_amd64/cassandra.so
Binary file not shown.
48 changes: 48 additions & 0 deletions cloudclustersio/cassandra/user.cer.pem
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
Bag Attributes
friendlyName: node02
localKeyID: 54 69 6D 65 20 31 37 35 36 35 36 31 35 33 35 30 36 38
subject=/C=US/O=CCS/OU=CassandraCluster/CN=US
issuer=/CN=US/OU=CassandraCluster/O=CCS/C=US
-----BEGIN CERTIFICATE-----
MIIDAjCCAeoCCQDc+8X/xR8VOTANBgkqhkiG9w0BAQsFADBDMQswCQYDVQQDDAJV
UzEZMBcGA1UECwwQQ2Fzc2FuZHJhQ2x1c3RlcjEMMAoGA1UECgwDQ0NTMQswCQYD
VQQGEwJVUzAeFw0yNTA4Mz4MzA5MDdaFw0zNTA4MjgxMzA5MDdaMEMxCzAJBgNV
BAYTAlVTMQwwCgYDVQQKEwNDQ1MxGTAXBgNVBAsTEENhc3NhbmRyYUNsdXN0ZXIx
CzAJBgNVBAMTAlVTMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsD4p
aToO3XvGQEjpUpt12f82AwsYHaz9q71mmPyA/7EWxY4ybHVdaNKpYUwtCqTl8wRu
X9klNgI4qbU8rEyG+rWaZG3dJ56f4uvkOJQExHYjPlDApR8xF18CDevUM9YjcBH7
UxufkhkNHIPrFiwLvHnvmUOfsDhBhWy6WaWHsSTCO2WW0hnEWAJjL+MUkwJo6NTW
hkWgM19HwBTadZS1FtL6cNFZeRRMGclp2mZ46iTJlF1n7eD2IXrcCWoPKPvJrS2a
chtKE14KlLep5F+p+vNSTX0s5a0uuPRvIFoIYPl1/I4W27JBzprr+hK/26nZrSZl
JUj9OFMYvdgMipiojwIDAQABMA0GCSqGSIb3DQEBCwUAA4IBAQAgXR+hO8t4yCl5
wNlTkSzrGf7SgNmkdwIIfSte3qkt7rnkCeP24KkhoIKO3w6vx8wztxCD/jD5CQDw
PMhEcIXfkOZisPSw3iulK/BLCDdPjQOcjiHai9X2BzaWTJpIkykotxUjGcoBso55
wI6g/CjXhyk9TAWZBmf8ZJETO8ZbcTONBYrubojXLZsGWBK+KY26sVE9KuRntcyQ
eJK8Yl1Ga0TeAwr0vOfAuHKRONk4yZFDev0valAz5owus8uRJiVrq8R49QqmI/o0
9AV5oCvRvLyiT+1XuoKS7MrJfISnUNHOLZMTVvTvebxvfUB0q9RJ+7y03lHGp8Qx
ZD8xdM11
-----END CERTIFICATE-----
Bag Attributes
friendlyName: C=US,O=CCS,OU=CassandraCluster,CN=US
subject=/CN=US/OU=CassandraCluster/O=CCS/C=US
issuer=/CN=US/OU=CassandraCluster/O=CCS/C=US
-----BEGIN CERTIFICATE-----
MIIDWTCCAkGgAwIBAgIJAOg4rJcMC8RjMA0GCSqGSIb3DQEBCwUAMEMxCzAJBgNV
BAMMAlVTMRkwFwYDVQQLDBBDYXNzYW5kcmFDbHVzdGVyMQwwCgYDVQQKDANDQ1Mx
CzAJBgNVBAYTAlVTMB4XDTI1MDgzMDEzMDkwN1oXDTM1MDgyODEzMDkwN1owQzEL
MAkGA1UEAwwCVVMxGTAXBgNVBAsMEENhc3NhbmRyYUNsdXN0ZXIxDDAKBgNVBAoM
A0NDUzELMAkGA1UEBhMCVVMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB
AQCjLhkPd43OMTJTTE/ZnKWEH9K4GnY7/3UCfo0yRCIY6DJv/fCNVQLSRRmH2NGh
s5WYYHT9WowunPiXaHaU/OF3MdeFia8bl6ndj9SCxLihRUilLy4skC5unOpY55c1
6Nxn3fVmQhVhNu/0Sak+4xMUtSBOiUyXpfAkPeFskpwMzq5f06v3GC+jKpd2hlKY
bKo2SCOoD4oLSnlBQ2d+0oH0/C0ngJAKpkx3WBNfSidY21PKTTt/D4r7dLJIPds8
yKXmundxj9+tsp5EbY6IZcA+ghuFfFc/aFRGt8+hnbjCLx0JOoZUDUu5a6t0OL/p
2QHy9nitRw9xV2NBq9AoVgWtAgMBAAGjUDBOMB0GA1UdDgQWBBSm87Z4zM8a6IY2
C2uKhu31Mxz5ETAfBgNVHSMEGDAWgBSm87Z4zM8a6IY2C2uKhu31Mxz5ETAMBgNV
HRMEBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB/JVwfsXYfLhEQC5v3jgp0KyPv
AuoQcMfs8YnGlFY3c+ILYLkcDaLhBE8rAxEf01kS3W38t3GktRafntYgfy2ya3kB
y5LwtahhxqM2nAgKh5ZIlAzmCW4nwpSd6HoB7jsI3CfTLjHFYVQHa/IIEAtGvRP8
Zke+qJWSg38jCr4OBSPcVlkHrWC3cAHdfJoG2mi6L3qAr7qBSJtPhSIZsWjmMxg1
/jV9LYMt/Cv9FESKQh/bPyCI1jRXOGlCv/SapST5aAkjGN0YsaF4YV1YUrK2/aIV
469LPnbw6ZFuQ4WM8YCdf5G+RNGpnywuWRGjcmTSdFij/bbrsLjgvKYxlyv2
-----END CERTIFICATE-----
32 changes: 32 additions & 0 deletions cloudclustersio/cassandra/user.key.pem
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
Bag Attributes
friendlyName: node01
localKeyID: 54 69 6D 65 20 31 37 35 36 35 36 31 35 34 32 31 38 38
Key Attributes: <No Attributes>
-----BEGIN PRIVATE KEY-----
MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCwPilpOg7de8ZA
SOlSm3XZ/zYDCxgdrP2rvWaY/ID/sRbFjjJsdV1o0qlhTC0KpOXzBG5f2SU2Ajip
tTysTIb6tZpkbd0nnp/n6+Q4lATEdiM+UMClHzEXXwIN69Qz1iNwEftTG5+SGQ0c
g+sWLAu8ee+ZQ5+wOEGFbLpZpYexJMI7ZZbSGcRYAmMv4xSTAmjo1NaGRaAzX0fA
FNp1lLUW0vpw0Vl5FEwZyWnaZnjqJMmUXWft4PYhetwJag8o+8mtLZpyG0oTXgqU
t6nkX6n681JNfSzlrS649G8gWghg+XX8jhbbskHOmuv6Er/bqdmtJmUlSP04Uxi9
2AyKmKiPAgMBAAEjggEAP9r15BNOCX9sECSarPx4kbh/GFEvtqjT7CKehrWOA5Zl
GsTvjg5j/rO8/Oy9sQqX6hnj58RkUBIz94Eb7412pmWf/90ycMVvRqeTM9ClfY0U
LeLSOcF4ZvBcbTDR3MosYtGRDsaGZUfAUWGWjpz8z5gacJxowk9PpgkD57Eq3cpJ
/pXqXedFwbWJqcM6bgOKidYD2vGJCgnTmTopxnZdhxUzd4+Z9O5ZmnulvKRNljn8
Eri+D52ay4PJ05Dn7S3oxqydj8pn9eqxF81/URIiDg825BH57mAfyAIoIV0bM1vB
amfHSPzJC0sdDhI/D1ruD6xAB6Mcwnl8euoPCDgdGQKBgQDrVZclXkydzuxI3G4a
fi68/OPcntpeLuk6Z0G3Fx8EQgRPKCjI97aiLBvtjgN9lTmkXIAPH6O+94WZFtsL
B3xt0ldWxwnQl1DcnFNS4Bd5Dd+IJwJBSn5rfXR1ORbk4bkEd4yhw3OVOrBTl58H
0QBm2kL+49Lw601a/mUJl7sN+wKBgQC/uCultfr5cBehN6R/l+T4LxStFpfnMLVt
lFx4IowHj7PfL+ox57rv5nvg+GPG8KhoCxpe9TS/b+v/LEX9WTo1ZFYdwdElTSVq
Z4o5TC1VcKM5NyC2wLupITHEiqCjWLWYNivc/u4E/mPWSdBOfK8ltcPNin3Wrfmq
sXBLlClvfQKBgAnRQkLu0idrMHRBrd4xEWYU7rSPc/Cl6FjlYdpvfn3A+0kKFdl8
bAQL7wZT/FVK2mK+8SCwYzZeQRaH2490On6iXb5jA0fOaDMr2lYEvzXvnDmj1vY+
U1PMogUZ4pidyggjrJw6+SFql1yFYL8Euw2PYWgcvPoL9ugq4LArwkPtAoGBAKDo
1ZFenIeQgfSou+LvPJjlAwiHRvUeV5fiBn46GKccAE7Za0l5gddp7h0SvMOzJtU0
RGzghuYJ7Nwdb5zEr+syDGkrS/tvtXCJ+GRAwGfOguA5mbZpKtg36QpZg5u1j6xy
AvyX5nPAg1DOYQwO7/3Jgc5YZ2ewWzTdei+k6eYNAoGBAM2ZAzU/aSMXzmmaYEls
ATzbAWzz4TiyQYGcRpngZh9DKboNP80/kdj/fOsjV4FTj1NuDVhdxYw3QZpfVKtW
Oa6qHVta20GY//SWXPNoXD3Lrw8biUUjnre28/dovu5uoSf1/oIFLvHRLF7mgOgo
JxKfpPtH4vaQEuf3b/+lOn6A
-----END PRIVATE KEY-----
2 changes: 1 addition & 1 deletion composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
}
],
"require": {
"php": ">=5.6.0"
"php": ">=8.3.0"
},
"require-dev": {
"behat/behat": "~3.0.6",
Expand Down
Empty file modified doxygen.rb
100755 → 100644
Empty file.
8 changes: 5 additions & 3 deletions ext/config.m4
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,12 @@ if test -z "$PHP_CASSANDRA_FOUND_PHP_VERSION_NUMBER"; then
AC_MSG_ERROR([failed to detect PHP version, please report])
fi

if test "$PHP_CASSANDRA_FOUND_PHP_VERSION_NUMBER" -lt "50600"; then
AC_MSG_ERROR([not supported. PHP version 5.6.0+ required (found $PHP_CASSANDRA_FOUND_PHP_VERSION)])
if test "$PHP_CASSANDRA_FOUND_PHP_VERSION_NUMBER" -lt "80300"; then
AC_MSG_ERROR([not supported. PHP version 8.3.0 or higher is required (found $PHP_CASSANDRA_FOUND_PHP_VERSION)])
else
AC_MSG_RESULT([supported ($PHP_CASSANDRA_FOUND_PHP_VERSION)])
AC_MSG_CHECKING([for PHP 8.3+ compatibility])
AC_MSG_RESULT([PHP 8.3+ compatibility will be checked during compilation])
fi

if test -z "$PHP_UV"; then
Expand Down Expand Up @@ -302,7 +304,7 @@ if test "$PHP_CASSANDRA" != "no"; then
AC_MSG_ERROR([Unable to load libcassandra])
],
[
$ac_extra
$ac_extra -lssl -lcrypto -lz -luv -lm -lstdc++
]
)

Expand Down
228 changes: 228 additions & 0 deletions ext/configure.ac
Original file line number Diff line number Diff line change
@@ -0,0 +1,228 @@
dnl This file becomes configure.ac for self-contained extensions.

dnl Include external macro definitions before the AC_INIT to also remove
dnl comments starting with # and empty newlines from the included files.
m4_include([build/ax_check_compile_flag.m4])
m4_include([build/ax_gcc_func_attribute.m4])
m4_include([build/libtool.m4])
m4_include([build/ltoptions.m4])
m4_include([build/ltsugar.m4])
m4_include([build/ltversion.m4])
m4_include([build/lt~obsolete.m4])
m4_include([build/php_cxx_compile_stdcxx.m4])
m4_include([build/php.m4])
m4_include([build/pkg.m4])

AC_PREREQ([2.68])
AC_INIT
AC_CONFIG_SRCDIR([config.m4])
AC_CONFIG_AUX_DIR([build])
AC_PRESERVE_HELP_ORDER

PHP_CONFIG_NICE(config.nice)

AC_DEFUN([PHP_EXT_BUILDDIR],[.])dnl
AC_DEFUN([PHP_EXT_DIR],[""])dnl
AC_DEFUN([PHP_EXT_SRCDIR],[$abs_srcdir])dnl
AC_DEFUN([PHP_ALWAYS_SHARED],[
ext_output="yes, shared"
ext_shared=yes
test "[$]$1" = "no" && $1=yes
])dnl

test -z "$CFLAGS" && auto_cflags=1

abs_srcdir=`(cd $srcdir && pwd)`
abs_builddir=`pwd`

PKG_PROG_PKG_CONFIG
AC_PROG_CC([cc gcc])
PHP_DETECT_ICC
PHP_DETECT_SUNCC

dnl Support systems with system libraries in e.g. /usr/lib64.
PHP_ARG_WITH([libdir],
[for system library directory],
[AS_HELP_STRING([--with-libdir=NAME],
[Look for libraries in .../NAME rather than .../lib])],
[lib],
[no])

PHP_RUNPATH_SWITCH
PHP_SHLIB_SUFFIX_NAMES

dnl Find php-config script.
PHP_ARG_WITH([php-config],,
[AS_HELP_STRING([--with-php-config=PATH],
[Path to php-config [php-config]])],
[php-config],
[no])

dnl For BC.
PHP_CONFIG=$PHP_PHP_CONFIG
prefix=`$PHP_CONFIG --prefix 2>/dev/null`
phpincludedir=`$PHP_CONFIG --include-dir 2>/dev/null`
INCLUDES=`$PHP_CONFIG --includes 2>/dev/null`
EXTENSION_DIR=`$PHP_CONFIG --extension-dir 2>/dev/null`
PHP_EXECUTABLE=`$PHP_CONFIG --php-binary 2>/dev/null`

if test -z "$prefix"; then
AC_MSG_ERROR([Cannot find php-config. Please use --with-php-config=PATH])
fi

php_shtool=$srcdir/build/shtool
PHP_INIT_BUILD_SYSTEM

AC_MSG_CHECKING([for PHP prefix])
AC_MSG_RESULT([$prefix])
AC_MSG_CHECKING([for PHP includes])
AC_MSG_RESULT([$INCLUDES])
AC_MSG_CHECKING([for PHP extension directory])
AC_MSG_RESULT([$EXTENSION_DIR])
AC_MSG_CHECKING([for PHP installed headers prefix])
AC_MSG_RESULT([$phpincludedir])

dnl Checks for PHP_DEBUG / ZEND_DEBUG / ZTS.
AC_MSG_CHECKING([if debug is enabled])
old_CPPFLAGS=$CPPFLAGS
CPPFLAGS="-I$phpincludedir"
AC_EGREP_CPP(php_debug_is_enabled,[
#include <main/php_config.h>
#if ZEND_DEBUG
php_debug_is_enabled
#endif
],[
PHP_DEBUG=yes
],[
PHP_DEBUG=no
])
CPPFLAGS=$old_CPPFLAGS
AC_MSG_RESULT([$PHP_DEBUG])

AC_MSG_CHECKING([if zts is enabled])
old_CPPFLAGS=$CPPFLAGS
CPPFLAGS="-I$phpincludedir"
AC_EGREP_CPP(php_zts_is_enabled,[
#include <main/php_config.h>
#if ZTS
php_zts_is_enabled
#endif
],[
PHP_THREAD_SAFETY=yes
],[
PHP_THREAD_SAFETY=no
])
CPPFLAGS=$old_CPPFLAGS
AC_MSG_RESULT([$PHP_THREAD_SAFETY])

dnl Discard optimization flags when debugging is enabled.
if test "$PHP_DEBUG" = "yes"; then
PHP_DEBUG=1
ZEND_DEBUG=yes
changequote({,})
CFLAGS=`echo "$CFLAGS" | $SED -e 's/-O[0-9s]*//g'`
CXXFLAGS=`echo "$CXXFLAGS" | $SED -e 's/-O[0-9s]*//g'`
changequote([,])
dnl Add -O0 only if GCC or ICC is used.
if test "$GCC" = "yes" || test "$ICC" = "yes"; then
CFLAGS="$CFLAGS -O0"
CXXFLAGS="$CXXFLAGS -g -O0"
fi
if test "$SUNCC" = "yes"; then
if test -n "$auto_cflags"; then
CFLAGS="-g"
CXXFLAGS="-g"
else
CFLAGS="$CFLAGS -g"
CXXFLAGS="$CFLAGS -g"
fi
fi
else
PHP_DEBUG=0
ZEND_DEBUG=no
fi

dnl Always shared.
PHP_BUILD_SHARED

dnl Required programs.
PHP_PROG_AWK

sinclude(config.m4)

enable_static=no
enable_shared=yes

dnl Only allow AC_PROG_CXX and AC_PROG_CXXCPP if they are explicitly called (by
dnl PHP_REQUIRE_CXX). Otherwise AC_PROG_LIBTOOL fails if there is no working C++
dnl compiler.
AC_PROVIDE_IFELSE([PHP_REQUIRE_CXX], [], [
undefine([AC_PROG_CXX])
AC_DEFUN([AC_PROG_CXX], [])
undefine([AC_PROG_CXXCPP])
AC_DEFUN([AC_PROG_CXXCPP], [php_prog_cxxcpp=disabled])
])
AC_PROG_LIBTOOL

all_targets='$(PHP_MODULES) $(PHP_ZEND_EX)'
install_targets="install-modules install-headers"
phplibdir="`pwd`/modules"
CPPFLAGS="$CPPFLAGS -DHAVE_CONFIG_H"
CFLAGS_CLEAN='$(CFLAGS) -D_GNU_SOURCE'
CXXFLAGS_CLEAN='$(CXXFLAGS)'

test "$prefix" = "NONE" && prefix="/usr/local"
test "$exec_prefix" = "NONE" && exec_prefix='$(prefix)'

if test "$cross_compiling" = yes ; then
AC_MSG_CHECKING(for native build C compiler)
AC_CHECK_PROGS(BUILD_CC, [gcc clang c99 c89 cc cl],none)
AC_MSG_RESULT($BUILD_CC)
else
BUILD_CC=$CC
fi

PHP_SUBST(PHP_MODULES)
PHP_SUBST(PHP_ZEND_EX)

PHP_SUBST(all_targets)
PHP_SUBST(install_targets)

PHP_SUBST(prefix)
PHP_SUBST(exec_prefix)
PHP_SUBST(libdir)
PHP_SUBST(prefix)
PHP_SUBST(phplibdir)
PHP_SUBST(phpincludedir)

PHP_SUBST(CC)
PHP_SUBST(CFLAGS)
PHP_SUBST(CFLAGS_CLEAN)
PHP_SUBST(CPP)
PHP_SUBST(CPPFLAGS)
PHP_SUBST(CXX)
PHP_SUBST(CXXFLAGS)
PHP_SUBST(CXXFLAGS_CLEAN)
PHP_SUBST(EXTENSION_DIR)
PHP_SUBST(PHP_EXECUTABLE)
PHP_SUBST(EXTRA_LDFLAGS)
PHP_SUBST(EXTRA_LIBS)
PHP_SUBST(INCLUDES)
PHP_SUBST(LFLAGS)
PHP_SUBST(LDFLAGS)
PHP_SUBST(SHARED_LIBTOOL)
PHP_SUBST(LIBTOOL)
PHP_SUBST(SHELL)
PHP_SUBST(INSTALL_HEADERS)
PHP_SUBST(BUILD_CC)

PHP_GEN_BUILD_DIRS
PHP_GEN_GLOBAL_MAKEFILE

test -d modules || $php_shtool mkdir modules

AC_CONFIG_HEADERS([config.h])

AC_CONFIG_COMMANDS_PRE([PHP_PATCH_CONFIG_HEADERS([config.h.in])])

AC_OUTPUT
Empty file modified ext/doc/generate_doc.sh
100755 → 100644
Empty file.
Empty file modified ext/doc/generate_doc_yaml.sh
100755 → 100644
Empty file.
5 changes: 3 additions & 2 deletions ext/install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -38,11 +38,12 @@ mv build/lib/libcassandra_static.a build/lib/libcassandra.a
popd

echo "Compiling and installing the extension..."
pushd $basedir
phpize

echo ./configure --with-cassandra=$builddir --with-libdir=lib
LIBS="-lssl -lz -luv -lm -lstdc++" LDFLAGS="-L$builddir/lib" ./configure --with-cassandra=$builddir --with-libdir=lib
LIBS="-lssl -lcrypto -lz -luv -lm -lstdc++" LDFLAGS="-L$builddir/lib" ./configure --with-cassandra=$builddir --with-libdir=lib
make
make install
popd

rm -Rf /tmp/php-driver-installation
Empty file modified ext/packaging/build_deb.sh
100755 → 100644
Empty file.
Empty file modified ext/packaging/build_rpm.sh
100755 → 100644
Empty file.
Empty file modified ext/packaging/debian-php5.6/rules
100755 → 100644
Empty file.
Empty file modified ext/packaging/debian-php7.0/rules
100755 → 100644
Empty file.
Empty file modified ext/packaging/debian-php7.1/rules
100755 → 100644
Empty file.
Loading