php_info_print_table_row(2, "Supported modes", tmp2.s->val);
smart_str_free(&tmp1);
smart_str_free(&tmp2);
+
php_info_print_table_end();
DISPLAY_INI_ENTRIES();
int i;
smart_str str = {0};
smart_str_appends(&str, "Only keys of sizes ");
-
+ char *result = NULL;
+
for (i = 0; i < key_size_count; ++i) {
if (i == key_size_count - 1) {
smart_str_appends(&str, " or ");
smart_str_appends(&str, " supported");
smart_str_0(&str);
- return str.s->val;
+ result = estrndup(str.s->val, str.s->len);
+ smart_str_free(&str);
+
+ return result;
}
}
/* }}} */
}
data_s[data_size] = 0;
+
RETVAL_STRINGL(data_s, data_size);
-
+ efree(data_s);
+
/* freeing vars */
mcrypt_generic_end(td);
}
OFB crypt/decrypt data using key key with cipher cipher starting with iv */
PHP_FUNCTION(mcrypt_encrypt)
{
- char *cipher, *key, *data, *mode, *iv = NULL;
+ char *cipher, *key = NULL, *data, *mode, *iv = NULL;
int cipher_len, key_len, data_len, mode_len, iv_len = 0;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "ssss|s", &cipher, &cipher_len,
iv[--size] = (char) (255.0 * php_rand(TSRMLS_C) / RAND_MAX);
}
}
- RETURN_STRINGL(iv, n);
+ RETVAL_STRINGL(iv, n);
+ efree(iv);
}
/* }}} */