Skip to content

Commit

Permalink
Merge branch 'php7' of https://github.com/zxcvdavid/yar into php7
Browse files Browse the repository at this point in the history
Conflicts:
	transports/curl.c
	yar_client.c
	yar_client.h
	yar_server.c
  • Loading branch information
laruence committed Feb 13, 2015
2 parents ebc5eed + f23da14 commit 0e279e5
Show file tree
Hide file tree
Showing 22 changed files with 726 additions and 858 deletions.
16 changes: 6 additions & 10 deletions packagers/json.c
Expand Up @@ -28,26 +28,22 @@
#include "ext/json/php_json.h"
#include "yar_packager.h"

int php_yar_packager_json_pack(yar_packager_t *self, zval *pzval, smart_str *buf, char **msg TSRMLS_DC) /* {{{ */ {
int php_yar_packager_json_pack(yar_packager_t *self, zval *pzval, smart_str *buf, char **msg) /* {{{ */ {
#if ((PHP_MAJOR_VERSION == 5) && (PHP_MINOR_VERSION < 3))
php_json_encode(buf, pzval TSRMLS_CC);
php_json_encode(buf, pzval);
#else
php_json_encode(buf, pzval, 0 TSRMLS_CC); /* options */
php_json_encode(buf, pzval, 0); /* options */
#endif

return 1;
} /* }}} */

zval * php_yar_packager_json_unpack(yar_packager_t *self, char *content, size_t len, char **msg TSRMLS_DC) /* {{{ */ {
zval * php_yar_packager_json_unpack(yar_packager_t *self, char *content, size_t len, char **msg, zval *rret) /* {{{ */ {
zval *return_value;
MAKE_STD_ZVAL(return_value);

#if ((PHP_MAJOR_VERSION == 5) && (PHP_MINOR_VERSION < 3))
php_json_decode(return_value, content, len, 1 TSRMLS_CC);
#else
php_json_decode(return_value, content, len, 1, 512 TSRMLS_CC);
#endif
php_json_decode(rret, content, len, 1, 512);

return_value = rret;
return return_value;
} /* }}} */

Expand Down
16 changes: 8 additions & 8 deletions packagers/msgpack.c
Expand Up @@ -29,19 +29,19 @@
#include "php_yar.h"
#include "yar_packager.h"

extern void php_msgpack_serialize(smart_str *buf, zval *val TSRMLS_DC);
extern void php_msgpack_unserialize(zval *return_value, char *str, size_t str_len TSRMLS_DC);
extern void php_msgpack_serialize(smart_str *buf, zval *val);
extern void php_msgpack_unserialize(zval *return_value, char *str, size_t str_len);

int php_yar_packager_msgpack_pack(yar_packager_t *self, zval *pzval, smart_str *buf, char **msg TSRMLS_DC) /* {{{ */ {
php_msgpack_serialize(buf, pzval TSRMLS_CC);
int php_yar_packager_msgpack_pack(yar_packager_t *self, zval *pzval, smart_str *buf, char **msg) /* {{{ */ {
php_msgpack_serialize(buf, pzval);
return 1;
} /* }}} */

zval * php_yar_packager_msgpack_unpack(yar_packager_t *self, char *content, size_t len, char **msg TSRMLS_DC) /* {{{ */ {
zval * php_yar_packager_msgpack_unpack(yar_packager_t *self, char *content, size_t len, char **msg, zval *rret) /* {{{ */ {
zval *return_value;
MAKE_STD_ZVAL(return_value);
ZVAL_NULL(return_value);
php_msgpack_unserialize(return_value, content, len TSRMLS_CC);
ZVAL_NULL(rret);
php_msgpack_unserialize(rret, content, len);
return_value = rret;
return return_value;
} /* }}} */

Expand Down
12 changes: 6 additions & 6 deletions packagers/php.c
Expand Up @@ -28,32 +28,32 @@
#include "yar_packager.h"
#include "ext/standard/php_var.h" /* for serialize */

int php_yar_packager_php_pack(yar_packager_t *self, zval *pzval, smart_str *buf, char **msg TSRMLS_DC) /* {{{ */ {
int php_yar_packager_php_pack(yar_packager_t *self, zval *pzval, smart_str *buf, char **msg) /* {{{ */ {
php_serialize_data_t var_hash;

PHP_VAR_SERIALIZE_INIT(var_hash);
php_var_serialize(buf, &pzval, &var_hash TSRMLS_CC);
php_var_serialize(buf, pzval, &var_hash);
PHP_VAR_SERIALIZE_DESTROY(var_hash);

return 1;
} /* }}} */

zval * php_yar_packager_php_unpack(yar_packager_t *self, char *content, size_t len, char **msg TSRMLS_DC) /* {{{ */ {
zval * php_yar_packager_php_unpack(yar_packager_t *self, char *content, size_t len, char **msg, zval *rret) /* {{{ */ {
zval *return_value;
const unsigned char *p;
php_unserialize_data_t var_hash;
p = (const unsigned char*)content;

MAKE_STD_ZVAL(return_value);
PHP_VAR_UNSERIALIZE_INIT(var_hash);
if (!php_var_unserialize(&return_value, &p, p + len, &var_hash TSRMLS_CC)) {
zval_ptr_dtor(&return_value);
if (!php_var_unserialize(rret, &p, p + len, &var_hash)) {
zval_ptr_dtor(rret);
PHP_VAR_UNSERIALIZE_DESTROY(var_hash);
spprintf(msg, 0, "unpack error at offset %ld of %ld bytes", (long)((char*)p - content), len);
return NULL;
}
PHP_VAR_UNSERIALIZE_DESTROY(var_hash);

return_value = rret;
return return_value;
} /* }}} */

Expand Down

0 comments on commit 0e279e5

Please sign in to comment.