@@ -91,8 +91,8 @@ ZEND_GET_MODULE(sysvshm)
9191sysvshm_module php_sysvshm ;
9292
9393static bool php_put_shm_data (sysvshm_chunk_head * ptr , zend_long key , const zend_string * data );
94- static zend_long php_check_shm_data (sysvshm_chunk_head * ptr , zend_long key );
95- static void php_remove_shm_data (sysvshm_chunk_head * ptr , zend_long shm_varpos );
94+ static ssize_t php_check_shm_data (sysvshm_chunk_head * ptr , zend_long key );
95+ static void php_remove_shm_data (sysvshm_chunk_head * ptr , size_t shm_varpos );
9696
9797/* {{{ PHP_MINIT_FUNCTION */
9898PHP_MINIT_FUNCTION (sysvshm )
@@ -284,7 +284,6 @@ PHP_FUNCTION(shm_get_var)
284284 zend_long shm_key ;
285285 sysvshm_shm * shm_list_ptr ;
286286 char * shm_data ;
287- zend_long shm_varpos ;
288287 sysvshm_chunk * shm_var ;
289288 php_unserialize_data_t var_hash ;
290289
@@ -300,9 +299,9 @@ PHP_FUNCTION(shm_get_var)
300299
301300 /* setup string-variable and serialize */
302301 /* get serialized variable from shared memory */
303- shm_varpos = php_check_shm_data (shm_list_ptr -> ptr , shm_key );
302+ ssize_t shm_varpos = php_check_shm_data (shm_list_ptr -> ptr , shm_key );
304303
305- if (shm_varpos < 0 ) {
304+ if (shm_varpos == -1 ) {
306305 php_error_docref (NULL , E_WARNING , "Variable key " ZEND_LONG_FMT " doesn't exist" , shm_key );
307306 RETURN_FALSE ;
308307 }
@@ -343,7 +342,7 @@ PHP_FUNCTION(shm_has_var)
343342PHP_FUNCTION (shm_remove_var )
344343{
345344 zval * shm_id ;
346- zend_long shm_key , shm_varpos ;
345+ zend_long shm_key ;
347346 sysvshm_shm * shm_list_ptr ;
348347
349348 if (SUCCESS != zend_parse_parameters (ZEND_NUM_ARGS (), "Ol" , & shm_id , sysvshm_ce , & shm_key )) {
@@ -356,9 +355,9 @@ PHP_FUNCTION(shm_remove_var)
356355 RETURN_THROWS ();
357356 }
358357
359- shm_varpos = php_check_shm_data (shm_list_ptr -> ptr , shm_key );
358+ ssize_t shm_varpos = php_check_shm_data (shm_list_ptr -> ptr , shm_key );
360359
361- if (shm_varpos < 0 ) {
360+ if (shm_varpos == -1 ) {
362361 php_error_docref (NULL , E_WARNING , "Variable key " ZEND_LONG_FMT " doesn't exist" , shm_key );
363362 RETURN_FALSE ;
364363 }
@@ -372,7 +371,7 @@ PHP_FUNCTION(shm_remove_var)
372371static bool php_put_shm_data (sysvshm_chunk_head * ptr , zend_long key , const zend_string * data )
373372{
374373 sysvshm_chunk * shm_var ;
375- zend_long shm_varpos ;
374+ ssize_t shm_varpos ;
376375
377376 size_t total_size = ((zend_long ) (ZSTR_LEN (data ) + sizeof (sysvshm_chunk ) - 1 ) / sizeof (zend_long )) * sizeof (zend_long ) + sizeof (zend_long ); /* zend_long alligment */
378377
@@ -395,15 +394,13 @@ static bool php_put_shm_data(sysvshm_chunk_head *ptr, zend_long key, const zend_
395394}
396395/* }}} */
397396
398- /* {{{ php_check_shm_data */
399- static zend_long php_check_shm_data (sysvshm_chunk_head * ptr , zend_long key )
397+ static ssize_t php_check_shm_data (sysvshm_chunk_head * ptr , zend_long key )
400398{
401- zend_long pos ;
402399 sysvshm_chunk * shm_var ;
403400
404401 ZEND_ASSERT (ptr );
405402
406- pos = ptr -> start ;
403+ size_t pos = ptr -> start ;
407404
408405 for (;;) {
409406 if (pos >= ptr -> end ) {
@@ -421,19 +418,17 @@ static zend_long php_check_shm_data(sysvshm_chunk_head *ptr, zend_long key)
421418 }
422419 return -1 ;
423420}
424- /* }}} */
425421
426- static void php_remove_shm_data (sysvshm_chunk_head * ptr , zend_long shm_varpos )
422+ static void php_remove_shm_data (sysvshm_chunk_head * ptr , size_t shm_varpos )
427423{
428424 sysvshm_chunk * chunk_ptr , * next_chunk_ptr ;
429- zend_long memcpy_len ;
430425
431426 ZEND_ASSERT (ptr );
432427
433428 chunk_ptr = (sysvshm_chunk * ) ((char * ) ptr + shm_varpos );
434429 next_chunk_ptr = (sysvshm_chunk * ) ((char * ) ptr + shm_varpos + chunk_ptr -> next );
435430
436- memcpy_len = ptr -> end - shm_varpos - chunk_ptr -> next ;
431+ size_t memcpy_len = ptr -> end - shm_varpos - chunk_ptr -> next ;
437432 ptr -> free += chunk_ptr -> next ;
438433 ptr -> end -= chunk_ptr -> next ;
439434 if (memcpy_len > 0 ) {
0 commit comments