summaryrefslogtreecommitdiff
path: root/ext/recode/recode.c
diff options
context:
space:
mode:
authorfoobar <sniper@php.net>2002-04-24 12:45:55 +0000
committerfoobar <sniper@php.net>2002-04-24 12:45:55 +0000
commit712c85eddc88fe05d4cd453c10fd19fdf692a451 (patch)
tree14dc1fda1a041f2bbfb5e19aa4fb8650d82782e4 /ext/recode/recode.c
parent1259f0c24ab9cfffe2fe922c8052320cfb3a6353 (diff)
downloadphp-git-712c85eddc88fe05d4cd453c10fd19fdf692a451.tar.gz
One big mess is a bit less mess now.
Diffstat (limited to 'ext/recode/recode.c')
-rw-r--r--ext/recode/recode.c80
1 files changed, 43 insertions, 37 deletions
diff --git a/ext/recode/recode.c b/ext/recode/recode.c
index 8c17b5f76c..cb91166012 100644
--- a/ext/recode/recode.c
+++ b/ext/recode/recode.c
@@ -25,26 +25,43 @@
#endif
#include "php.h"
-#include "php_recode.h"
#include "php_streams.h"
#if HAVE_LIBRECODE
-#include "ext/standard/info.h"
-#include "ext/standard/file.h"
-#include "ext/standard/php_string.h"
-#include "zend_list.h"
-
-#ifdef HAVE_BROKEN_RECODE
+/* For recode 3.5 */
extern char *program_name;
char *program_name = "php";
+
+#ifdef HAVE_STDBOOL_H
+# include <stdbool.h>
+#else
+ typedef enum {false = 0, true = 1} bool;
#endif
+
+#include <stdio.h>
+#include <sys/types.h>
+#include <unistd.h>
+#include <recode.h>
+
+#include "php_recode.h"
+#include "ext/standard/info.h"
+#include "ext/standard/file.h"
+#include "ext/standard/php_string.h"
+
/* }}} */
-#define SAFE_STRING(s) ((s)?(s):"")
+ZEND_BEGIN_MODULE_GLOBALS(recode)
+ RECODE_OUTER outer;
+ZEND_END_MODULE_GLOBALS(recode)
+#ifdef ZTS
+# define ReSG(v) TSRMG(recode_globals_id, zend_recode_globals *, v)
+#else
+# define ReSG(v) (recode_globals.v)
+#endif
+
ZEND_DECLARE_MODULE_GLOBALS(recode);
-extern int le_fp,le_pp;
/* {{{ module stuff */
static zend_function_entry php_recode_functions[] = {
@@ -55,22 +72,18 @@ static zend_function_entry php_recode_functions[] = {
};
zend_module_entry recode_module_entry = {
- STANDARD_MODULE_HEADER,
+ STANDARD_MODULE_HEADER,
"recode",
- php_recode_functions,
+ php_recode_functions,
PHP_MINIT(recode),
PHP_MSHUTDOWN(recode),
NULL,
NULL,
PHP_MINFO(recode),
- NO_VERSION_YET,
+ NO_VERSION_YET,
STANDARD_MODULE_PROPERTIES
};
-#if APACHE
-extern void timeout(int sig);
-#endif
-
#ifdef COMPILE_DL_RECODE
ZEND_GET_MODULE(recode)
#endif
@@ -84,14 +97,14 @@ PHP_MINIT_FUNCTION(recode)
{
ZEND_INIT_MODULE_GLOBALS(recode, php_recode_init_globals, NULL);
- ReSG(outer) = recode_new_outer(true);
- if (ReSG(outer) == NULL)
+ ReSG(outer) = recode_new_outer(false);
+ if (ReSG(outer) == NULL) {
return FAILURE;
-
+ }
+
return SUCCESS;
}
-
PHP_MSHUTDOWN_FUNCTION(recode)
{
if (ReSG(outer)) {
@@ -100,36 +113,33 @@ PHP_MSHUTDOWN_FUNCTION(recode)
return SUCCESS;
}
-
PHP_MINFO_FUNCTION(recode)
{
php_info_print_table_start();
php_info_print_table_row(2, "Recode Support", "enabled");
php_info_print_table_row(2, "Revision", "$Revision$");
php_info_print_table_end();
-
}
/* {{{ proto string recode_string(string request, string str)
Recode string str according to request string */
-
PHP_FUNCTION(recode_string)
{
RECODE_REQUEST request = NULL;
char *r = NULL;
- pval **str;
- pval **req;
+ zval **str;
+ zval **req;
bool success;
int r_len=0, r_alen =0;
- if (ZEND_NUM_ARGS() != 2
- || zend_get_parameters_ex(2, &req, &str) == FAILURE) {
- WRONG_PARAM_COUNT;
+ if (ZEND_NUM_ARGS() != 2 || zend_get_parameters_ex(2, &req, &str) == FAILURE) {
+ WRONG_PARAM_COUNT;
}
convert_to_string_ex(str);
convert_to_string_ex(req);
request = recode_new_request(ReSG(outer));
+
if (request == NULL) {
php_error(E_WARNING, "Cannot allocate request structure");
RETURN_FALSE;
@@ -168,20 +178,17 @@ PHP_FUNCTION(recode_file)
{
RECODE_REQUEST request = NULL;
int success;
- pval **req;
- pval **input, **output;
+ zval **req;
+ zval **input, **output;
php_stream *instream, *outstream;
FILE *in_fp, *out_fp;
int in_type, out_type;
-
- if (ZEND_NUM_ARGS() != 3
- || zend_get_parameters_ex(3, &req, &input, &output) == FAILURE) {
+ if (ZEND_NUM_ARGS() != 3 || zend_get_parameters_ex(3, &req, &input, &output) == FAILURE) {
WRONG_PARAM_COUNT;
}
- instream = zend_fetch_resource(input TSRMLS_CC,-1, "File-Handle", &in_type,
- 1, php_file_le_stream());
+ instream = zend_fetch_resource(input TSRMLS_CC,-1, "File-Handle", &in_type, 1, php_file_le_stream());
if (!instream) {
php_error(E_WARNING,"Unable to find input file identifier");
@@ -192,8 +199,7 @@ PHP_FUNCTION(recode_file)
RETURN_FALSE;
}
- outstream = zend_fetch_resource(output TSRMLS_CC,-1, "File-Handle", &out_type,
- 1, php_file_le_stream());
+ outstream = zend_fetch_resource(output TSRMLS_CC,-1, "File-Handle", &out_type, 1, php_file_le_stream());
if (!outstream) {
php_error(E_WARNING,"Unable to find output file identifier");
RETURN_FALSE;