Skip to content

Commit 70fa43e

Browse files
LeSuissecmb69
authored andcommitted
Add stub for ext zlib
1 parent c53064f commit 70fa43e

File tree

3 files changed

+254
-133
lines changed

3 files changed

+254
-133
lines changed

ext/zlib/zlib.c

Lines changed: 7 additions & 133 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@
3131
#include "ext/standard/file.h"
3232
#include "ext/standard/php_string.h"
3333
#include "php_zlib.h"
34+
#include "zlib_arginfo.h"
3435

3536
/*
3637
* zlib include files can define the following preprocessor defines which rename
@@ -1252,147 +1253,20 @@ ZEND_TSRMLS_CACHE_DEFINE()
12521253
ZEND_GET_MODULE(php_zlib)
12531254
#endif
12541255

1255-
/* {{{ arginfo */
1256-
ZEND_BEGIN_ARG_INFO_EX(arginfo_ob_gzhandler, 0, 0, 2)
1257-
ZEND_ARG_INFO(0, data)
1258-
ZEND_ARG_INFO(0, flags)
1259-
ZEND_END_ARG_INFO()
1260-
1261-
ZEND_BEGIN_ARG_INFO(arginfo_zlib_get_coding_type, 0)
1262-
ZEND_END_ARG_INFO()
1263-
1264-
ZEND_BEGIN_ARG_INFO_EX(arginfo_gzfile, 0, 0, 1)
1265-
ZEND_ARG_INFO(0, filename)
1266-
ZEND_ARG_INFO(0, use_include_path)
1267-
ZEND_END_ARG_INFO()
1268-
1269-
ZEND_BEGIN_ARG_INFO_EX(arginfo_gzopen, 0, 0, 2)
1270-
ZEND_ARG_INFO(0, filename)
1271-
ZEND_ARG_INFO(0, mode)
1272-
ZEND_ARG_INFO(0, use_include_path)
1273-
ZEND_END_ARG_INFO()
1274-
1275-
ZEND_BEGIN_ARG_INFO_EX(arginfo_readgzfile, 0, 0, 1)
1276-
ZEND_ARG_INFO(0, filename)
1277-
ZEND_ARG_INFO(0, use_include_path)
1278-
ZEND_END_ARG_INFO()
1279-
1280-
ZEND_BEGIN_ARG_INFO_EX(arginfo_zlib_encode, 0, 0, 2)
1281-
ZEND_ARG_INFO(0, data)
1282-
ZEND_ARG_INFO(0, encoding)
1283-
ZEND_ARG_INFO(0, level)
1284-
ZEND_END_ARG_INFO()
1285-
1286-
ZEND_BEGIN_ARG_INFO_EX(arginfo_zlib_decode, 0, 0, 1)
1287-
ZEND_ARG_INFO(0, data)
1288-
ZEND_ARG_INFO(0, max_decoded_len)
1289-
ZEND_END_ARG_INFO()
1290-
1291-
ZEND_BEGIN_ARG_INFO_EX(arginfo_gzdeflate, 0, 0, 1)
1292-
ZEND_ARG_INFO(0, data)
1293-
ZEND_ARG_INFO(0, level)
1294-
ZEND_ARG_INFO(0, encoding)
1295-
ZEND_END_ARG_INFO()
1296-
1297-
ZEND_BEGIN_ARG_INFO_EX(arginfo_gzencode, 0, 0, 1)
1298-
ZEND_ARG_INFO(0, data)
1299-
ZEND_ARG_INFO(0, level)
1300-
ZEND_ARG_INFO(0, encoding)
1301-
ZEND_END_ARG_INFO()
1302-
1303-
ZEND_BEGIN_ARG_INFO_EX(arginfo_gzcompress, 0, 0, 1)
1304-
ZEND_ARG_INFO(0, data)
1305-
ZEND_ARG_INFO(0, level)
1306-
ZEND_ARG_INFO(0, encoding)
1307-
ZEND_END_ARG_INFO()
1308-
1309-
ZEND_BEGIN_ARG_INFO_EX(arginfo_gzinflate, 0, 0, 1)
1310-
ZEND_ARG_INFO(0, data)
1311-
ZEND_ARG_INFO(0, max_decoded_len)
1312-
ZEND_END_ARG_INFO()
1313-
1314-
ZEND_BEGIN_ARG_INFO_EX(arginfo_gzdecode, 0, 0, 1)
1315-
ZEND_ARG_INFO(0, data)
1316-
ZEND_ARG_INFO(0, max_decoded_len)
1317-
ZEND_END_ARG_INFO()
1318-
1319-
ZEND_BEGIN_ARG_INFO_EX(arginfo_gzuncompress, 0, 0, 1)
1320-
ZEND_ARG_INFO(0, data)
1321-
ZEND_ARG_INFO(0, max_decoded_len)
1322-
ZEND_END_ARG_INFO()
1323-
1324-
ZEND_BEGIN_ARG_INFO_EX(arginfo_gzputs, 0, 0, 2)
1325-
ZEND_ARG_INFO(0, fp)
1326-
ZEND_ARG_INFO(0, str)
1327-
ZEND_ARG_INFO(0, length)
1328-
ZEND_END_ARG_INFO()
1329-
1330-
ZEND_BEGIN_ARG_INFO(arginfo_gzpassthru, 0)
1331-
ZEND_ARG_INFO(0, fp)
1332-
ZEND_END_ARG_INFO()
1333-
1334-
ZEND_BEGIN_ARG_INFO_EX(arginfo_gzseek, 0, 0, 2)
1335-
ZEND_ARG_INFO(0, fp)
1336-
ZEND_ARG_INFO(0, offset)
1337-
ZEND_ARG_INFO(0, whence)
1338-
ZEND_END_ARG_INFO()
1339-
1340-
ZEND_BEGIN_ARG_INFO(arginfo_gzread, 0)
1341-
ZEND_ARG_INFO(0, fp)
1342-
ZEND_ARG_INFO(0, length)
1343-
ZEND_END_ARG_INFO()
1344-
1345-
ZEND_BEGIN_ARG_INFO_EX(arginfo_gzgets, 0, 0, 1)
1346-
ZEND_ARG_INFO(0, fp)
1347-
ZEND_ARG_INFO(0, length)
1348-
ZEND_END_ARG_INFO()
1349-
1350-
ZEND_BEGIN_ARG_INFO_EX(arginfo_deflate_init, 0, 0, 1)
1351-
ZEND_ARG_INFO(0, encoding)
1352-
ZEND_ARG_INFO(0, level)
1353-
ZEND_END_ARG_INFO()
1354-
1355-
ZEND_BEGIN_ARG_INFO_EX(arginfo_deflate_add, 0, 0, 2)
1356-
ZEND_ARG_INFO(0, resource)
1357-
ZEND_ARG_INFO(0, add)
1358-
ZEND_ARG_INFO(0, flush_behavior)
1359-
ZEND_END_ARG_INFO()
1360-
1361-
ZEND_BEGIN_ARG_INFO_EX(arginfo_inflate_init, 0, 0, 1)
1362-
ZEND_ARG_INFO(0, encoding)
1363-
ZEND_ARG_INFO(0, options)
1364-
ZEND_END_ARG_INFO()
1365-
1366-
ZEND_BEGIN_ARG_INFO_EX(arginfo_inflate_add, 0, 0, 2)
1367-
ZEND_ARG_INFO(0, context)
1368-
ZEND_ARG_INFO(0, encoded_data)
1369-
ZEND_ARG_INFO(0, flush_mode)
1370-
ZEND_END_ARG_INFO()
1371-
1372-
ZEND_BEGIN_ARG_INFO_EX(arginfo_inflate_get_status, 0, 0, 1)
1373-
ZEND_ARG_INFO(0, resource)
1374-
ZEND_END_ARG_INFO()
1375-
1376-
ZEND_BEGIN_ARG_INFO_EX(arginfo_inflate_get_read_len, 0, 0, 1)
1377-
ZEND_ARG_INFO(0, resource)
1378-
ZEND_END_ARG_INFO()
1379-
1380-
/* }}} */
1381-
13821256
/* {{{ php_zlib_functions[] */
13831257
static const zend_function_entry php_zlib_functions[] = {
13841258
PHP_FE(readgzfile, arginfo_readgzfile)
1385-
PHP_FALIAS(gzrewind, rewind, arginfo_gzpassthru)
1386-
PHP_FALIAS(gzclose, fclose, arginfo_gzpassthru)
1387-
PHP_FALIAS(gzeof, feof, arginfo_gzpassthru)
1388-
PHP_FALIAS(gzgetc, fgetc, arginfo_gzpassthru)
1259+
PHP_FALIAS(gzrewind, rewind, arginfo_gzrewind)
1260+
PHP_FALIAS(gzclose, fclose, arginfo_gzclose)
1261+
PHP_FALIAS(gzeof, feof, arginfo_gzeof)
1262+
PHP_FALIAS(gzgetc, fgetc, arginfo_gzgetc)
13891263
PHP_FALIAS(gzgets, fgets, arginfo_gzgets)
13901264
PHP_FALIAS(gzread, fread, arginfo_gzread)
13911265
PHP_FE(gzopen, arginfo_gzopen)
13921266
PHP_FALIAS(gzpassthru, fpassthru, arginfo_gzpassthru)
13931267
PHP_FALIAS(gzseek, fseek, arginfo_gzseek)
1394-
PHP_FALIAS(gztell, ftell, arginfo_gzpassthru)
1395-
PHP_FALIAS(gzwrite, fwrite, arginfo_gzputs)
1268+
PHP_FALIAS(gztell, ftell, arginfo_gztell)
1269+
PHP_FALIAS(gzwrite, fwrite, arginfo_gzwrite)
13961270
PHP_FALIAS(gzputs, fwrite, arginfo_gzputs)
13971271
PHP_FE(gzfile, arginfo_gzfile)
13981272
PHP_FE(gzcompress, arginfo_gzcompress)

ext/zlib/zlib.stub.php

Lines changed: 131 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,131 @@
1+
<?php
2+
3+
/** @return string|false */
4+
function ob_gzhandler(string $data, int $flags) {}
5+
6+
/** @return string|false */
7+
function zlib_get_coding_type() {}
8+
9+
/** @return array|false */
10+
function gzfile(string $filename, int $use_include_path = 0) {}
11+
12+
/** @return resource|false */
13+
function gzopen(string $filename, string $mode, int $use_include_path = 0) {}
14+
15+
/** @return int|false */
16+
function readgzfile(string $filename, int $use_include_path = 0) {}
17+
18+
/** @return string|false */
19+
function zlib_encode(string $data, int $encoding, int $level = -1) {}
20+
21+
/** @return string|false */
22+
function zlib_decode(string $data, int $max_decoded_len = 0) {}
23+
24+
/** @return string|false */
25+
function gzdeflate(string $data, int $level = -1, int $encoding = ZLIB_ENCODING_RAW) {}
26+
27+
/** @return string|false */
28+
function gzencode(string $data, int $level = -1, int $encoding = ZLIB_ENCODING_GZIP) {}
29+
30+
/** @return string|false */
31+
function gzcompress(string $data, int $level = -1, int $encoding = ZLIB_ENCODING_DEFLATE) {}
32+
33+
/** @return string|false */
34+
function gzinflate(string $data, int $max_decoded_len = 0) {}
35+
36+
/** @return string|false */
37+
function gzdecode(string $data, int $max_decoded_len = 0) {}
38+
39+
/** @return string|false */
40+
function gzuncompress(string $data, int $max_decoded_len = 0) {}
41+
42+
/**
43+
* @param resource $fp
44+
*
45+
* @return int|false
46+
*/
47+
function gzwrite($fp, string $str, int $length = UNKNOWN) {};
48+
49+
/**
50+
* @param resource $fp
51+
*
52+
* @return int|false
53+
*/
54+
function gzputs($fp, string $str, int $length = UNKNOWN) {};
55+
56+
/** @param resource $fp */
57+
function gzrewind($fp): bool {};
58+
59+
/** @param resource $fp */
60+
function gzclose($fp): bool {};
61+
62+
/** @param resource $fp */
63+
function gzeof($fp): bool {};
64+
65+
/**
66+
* @param resource $fp
67+
*
68+
* @return string|false
69+
*/
70+
function gzgetc($fp) {};
71+
72+
/** @param resource $fp */
73+
function gzpassthru($fp): int {};
74+
75+
/** @param resource $fp */
76+
function gzseek($fp, int $offset, int $whence = SEEK_SET): int {};
77+
78+
/**
79+
* @param resource $fp
80+
*
81+
* @return int|false
82+
*/
83+
function gztell($fp) {};
84+
85+
/**
86+
* @param resource $fp
87+
*
88+
* @return string|false
89+
*/
90+
function gzread($fp, int $length) {};
91+
92+
/**
93+
* @param resource $fp
94+
*
95+
* @return string|false
96+
*/
97+
function gzgets($fp, int $length = 1024) {};
98+
99+
/** @return resource|false */
100+
function deflate_init(int $encoding, array $options = []) {};
101+
102+
/**
103+
* @param resource $resource
104+
*
105+
* @return string|false
106+
*/
107+
function deflate_add($resource, string $add, int $flush_behavior = ZLIB_SYNC_FLUSH) {};
108+
109+
/** @return resource|false */
110+
function inflate_init(int $encoding, array $options = []) {};
111+
112+
/**
113+
* @param resource $context
114+
*
115+
* @return string|false
116+
*/
117+
function inflate_add($context, string $encoded_data, int $flush_mode = ZLIB_SYNC_FLUSH) {};
118+
119+
/**
120+
* @param resource $resource
121+
*
122+
* @return int|false
123+
*/
124+
function inflate_get_status($resource) {};
125+
126+
/**
127+
* @param resource $resource
128+
*
129+
* @return int|false
130+
*/
131+
function inflate_get_read_len($resource) {};

0 commit comments

Comments
 (0)