@@ -214,11 +214,15 @@ typedef struct {
214
214
int memc_errno ;
215
215
} php_memc_t ;
216
216
217
+ #ifdef HAVE_MEMCACHED_PROTOCOL
218
+
217
219
typedef struct {
218
220
zend_object zo ;
219
221
php_memc_proto_handler_t * handler ;
220
222
} php_memc_server_t ;
221
223
224
+ #endif
225
+
222
226
enum {
223
227
MEMC_OP_SET ,
224
228
MEMC_OP_TOUCH ,
@@ -229,11 +233,15 @@ enum {
229
233
};
230
234
231
235
static zend_class_entry * memcached_ce = NULL ;
232
- static zend_class_entry * memcached_server_ce = NULL ;
236
+
233
237
static zend_class_entry * memcached_exception_ce = NULL ;
234
238
235
239
static zend_object_handlers memcached_object_handlers ;
240
+
241
+ #ifdef HAVE_MEMCACHED_PROTOCOL
236
242
static zend_object_handlers memcached_server_object_handlers ;
243
+ static zend_class_entry * memcached_server_ce = NULL ;
244
+ #endif
237
245
238
246
struct callbackContext
239
247
{
@@ -2653,6 +2661,7 @@ zend_object_value php_memc_new(zend_class_entry *ce TSRMLS_DC)
2653
2661
return retval ;
2654
2662
}
2655
2663
2664
+ #ifdef HAVE_MEMCACHED_PROTOCOL
2656
2665
static
2657
2666
void php_memc_server_free_storage (php_memc_server_t * intern TSRMLS_DC )
2658
2667
{
@@ -2681,6 +2690,7 @@ zend_object_value php_memc_server_new(zend_class_entry *ce TSRMLS_DC)
2681
2690
2682
2691
return retval ;
2683
2692
}
2693
+ #endif
2684
2694
2685
2695
ZEND_RSRC_DTOR_FUNC (php_memc_dtor )
2686
2696
{
@@ -3415,6 +3425,8 @@ static int php_memc_do_result_callback(zval *zmemc_obj, zend_fcall_info *fci,
3415
3425
}
3416
3426
/* }}} */
3417
3427
3428
+ #ifdef HAVE_MEMCACHED_PROTOCOL
3429
+
3418
3430
static
3419
3431
void s_destroy_cb (zend_fcall_info * fci )
3420
3432
{
@@ -3484,6 +3496,7 @@ PHP_METHOD(MemcachedServer, on)
3484
3496
RETURN_BOOL (rc );
3485
3497
}
3486
3498
3499
+ #endif
3487
3500
3488
3501
/* {{{ methods arginfo */
3489
3502
ZEND_BEGIN_ARG_INFO_EX (arginfo___construct , 0 , 0 , 0 )
@@ -3853,6 +3866,7 @@ static zend_function_entry memcached_class_methods[] = {
3853
3866
#undef MEMC_ME
3854
3867
/* }}} */
3855
3868
3869
+ #ifdef HAVE_MEMCACHED_PROTOCOL
3856
3870
/* {{{ */
3857
3871
#define MEMC_SE_ME (name , args ) PHP_ME(MemcachedServer, name, args, ZEND_ACC_PUBLIC)
3858
3872
static
@@ -3863,7 +3877,7 @@ zend_function_entry memcached_server_class_methods[] = {
3863
3877
};
3864
3878
#undef MEMC_SE_ME
3865
3879
/* }}} */
3866
-
3880
+ #endif
3867
3881
3868
3882
/* {{{ memcached_module_entry
3869
3883
*/
@@ -4066,6 +4080,7 @@ static void php_memc_register_constants(INIT_FUNC_ARGS)
4066
4080
*/
4067
4081
REGISTER_MEMC_CLASS_CONST_LONG (GET_PRESERVE_ORDER , MEMC_GET_PRESERVE_ORDER );
4068
4082
4083
+ #ifdef HAVE_MEMCACHED_PROTOCOL
4069
4084
/*
4070
4085
* Server callbacks
4071
4086
*/
@@ -4101,7 +4116,7 @@ static void php_memc_register_constants(INIT_FUNC_ARGS)
4101
4116
REGISTER_MEMC_CLASS_CONST_LONG (RESPONSE_EINTERNAL , PROTOCOL_BINARY_RESPONSE_EINTERNAL );
4102
4117
REGISTER_MEMC_CLASS_CONST_LONG (RESPONSE_EBUSY , PROTOCOL_BINARY_RESPONSE_EBUSY );
4103
4118
REGISTER_MEMC_CLASS_CONST_LONG (RESPONSE_ETMPFAIL , PROTOCOL_BINARY_RESPONSE_ETMPFAIL );
4104
-
4119
+ #endif
4105
4120
4106
4121
#undef REGISTER_MEMC_CLASS_CONST_LONG
4107
4122
@@ -4125,19 +4140,21 @@ PHP_MINIT_FUNCTION(memcached)
4125
4140
memcpy (& memcached_object_handlers , zend_get_std_object_handlers (), sizeof (zend_object_handlers ));
4126
4141
memcached_object_handlers .clone_obj = NULL ;
4127
4142
4128
- memcpy (& memcached_server_object_handlers , zend_get_std_object_handlers (), sizeof (zend_object_handlers ));
4129
- memcached_server_object_handlers .clone_obj = NULL ;
4130
-
4131
4143
le_memc = zend_register_list_destructors_ex (NULL , php_memc_dtor , "Memcached persistent connection" , module_number );
4132
4144
le_memc_sess = zend_register_list_destructors_ex (NULL , php_memc_sess_dtor , "Memcached Sessions persistent connection" , module_number );
4133
4145
4134
4146
INIT_CLASS_ENTRY (ce , "Memcached" , memcached_class_methods );
4135
4147
memcached_ce = zend_register_internal_class (& ce TSRMLS_CC );
4136
4148
memcached_ce -> create_object = php_memc_new ;
4137
4149
4150
+ #ifdef HAVE_MEMCACHED_PROTOCOL
4151
+ memcpy (& memcached_server_object_handlers , zend_get_std_object_handlers (), sizeof (zend_object_handlers ));
4152
+ memcached_server_object_handlers .clone_obj = NULL ;
4153
+
4138
4154
INIT_CLASS_ENTRY (ce , "MemcachedServer" , memcached_server_class_methods );
4139
4155
memcached_server_ce = zend_register_internal_class (& ce TSRMLS_CC );
4140
4156
memcached_server_ce -> create_object = php_memc_server_new ;
4157
+ #endif
4141
4158
4142
4159
INIT_CLASS_ENTRY (ce , "MemcachedException" , NULL );
4143
4160
memcached_exception_ce = zend_register_internal_class_ex (& ce , php_memc_get_exception_base (0 TSRMLS_CC ), NULL TSRMLS_CC );
0 commit comments