Skip to content

Commit 4976483

Browse files
authored
Declare ext/ftp constants in stubs (#8703)
1 parent fd049e8 commit 4976483

File tree

3 files changed

+73
-15
lines changed

3 files changed

+73
-15
lines changed

ext/ftp/ftp.stub.php

Lines changed: 55 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,61 @@
33
/** @generate-class-entries */
44

55
namespace FTP {
6+
/**
7+
* @var int
8+
* @cname FTPTYPE_ASCII
9+
*/
10+
const FTP_ASCII = UNKNOWN;
11+
/**
12+
* @var int
13+
* @cname FTPTYPE_ASCII
14+
*/
15+
const FTP_TEXT = UNKNOWN;
16+
/**
17+
* @var int
18+
* @cname FTPTYPE_IMAGE
19+
*/
20+
const FTP_BINARY = UNKNOWN;
21+
/**
22+
* @var int
23+
* @cname FTPTYPE_IMAGE
24+
*/
25+
const FTP_IMAGE = UNKNOWN;
26+
/**
27+
* @var int
28+
* @cname PHP_FTP_AUTORESUME
29+
*/
30+
const FTP_AUTORESUME = UNKNOWN;
31+
/**
32+
* @var int
33+
* @cname PHP_FTP_OPT_TIMEOUT_SEC
34+
*/
35+
const FTP_TIMEOUT_SEC = UNKNOWN;
36+
/**
37+
* @var int
38+
* @cname PHP_FTP_OPT_AUTOSEEK
39+
*/
40+
const FTP_AUTOSEEK = UNKNOWN;
41+
/**
42+
* @var int
43+
* @cname PHP_FTP_OPT_USEPASVADDRESS
44+
*/
45+
const FTP_USEPASVADDRESS = UNKNOWN;
46+
/**
47+
* @var int
48+
* @cname PHP_FTP_FAILED
49+
*/
50+
const FTP_FAILED = UNKNOWN;
51+
/**
52+
* @var int
53+
* @cname PHP_FTP_FINISHED
54+
*/
55+
const FTP_FINISHED = UNKNOWN;
56+
/**
57+
* @var int
58+
* @cname PHP_FTP_MOREDATA
59+
*/
60+
const FTP_MOREDATA = UNKNOWN;
661

762
/**
863
* @strict-properties
@@ -11,11 +66,9 @@
1166
final class Connection
1267
{
1368
}
14-
1569
}
1670

1771
namespace {
18-
1972
function ftp_connect(string $hostname, int $port = 21, int $timeout = 90): FTP\Connection|false {}
2073

2174
#ifdef HAVE_FTP_SSL
@@ -91,5 +144,4 @@ function ftp_quit(FTP\Connection $ftp): bool {}
91144
/** @param int|bool $value */
92145
function ftp_set_option(FTP\Connection $ftp, int $option, $value): bool {}
93146
function ftp_get_option(FTP\Connection $ftp, int $option): int|bool {}
94-
95147
}

ext/ftp/ftp_arginfo.h

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/* This is a generated file, edit the .stub.php file instead.
2-
* Stub hash: 2b1726dd5652839a37e533e20dfcf6782b3c766d */
2+
* Stub hash: bd80737c67a0c10119f97988e41a08870b1f1af9 */
33

44
ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_ftp_connect, 0, 1, FTP\\Connection, MAY_BE_FALSE)
55
ZEND_ARG_TYPE_INFO(0, hostname, IS_STRING, 0)
@@ -280,6 +280,21 @@ static const zend_function_entry class_FTP_Connection_methods[] = {
280280
ZEND_FE_END
281281
};
282282

283+
static void register_ftp_consts(int module_number)
284+
{
285+
REGISTER_LONG_CONSTANT("FTP_ASCII", FTPTYPE_ASCII, CONST_CS | CONST_PERSISTENT);
286+
REGISTER_LONG_CONSTANT("FTP_TEXT", FTPTYPE_ASCII, CONST_CS | CONST_PERSISTENT);
287+
REGISTER_LONG_CONSTANT("FTP_BINARY", FTPTYPE_IMAGE, CONST_CS | CONST_PERSISTENT);
288+
REGISTER_LONG_CONSTANT("FTP_IMAGE", FTPTYPE_IMAGE, CONST_CS | CONST_PERSISTENT);
289+
REGISTER_LONG_CONSTANT("FTP_AUTORESUME", PHP_FTP_AUTORESUME, CONST_CS | CONST_PERSISTENT);
290+
REGISTER_LONG_CONSTANT("FTP_TIMEOUT_SEC", PHP_FTP_OPT_TIMEOUT_SEC, CONST_CS | CONST_PERSISTENT);
291+
REGISTER_LONG_CONSTANT("FTP_AUTOSEEK", PHP_FTP_OPT_AUTOSEEK, CONST_CS | CONST_PERSISTENT);
292+
REGISTER_LONG_CONSTANT("FTP_USEPASVADDRESS", PHP_FTP_OPT_USEPASVADDRESS, CONST_CS | CONST_PERSISTENT);
293+
REGISTER_LONG_CONSTANT("FTP_FAILED", PHP_FTP_FAILED, CONST_CS | CONST_PERSISTENT);
294+
REGISTER_LONG_CONSTANT("FTP_FINISHED", PHP_FTP_FINISHED, CONST_CS | CONST_PERSISTENT);
295+
REGISTER_LONG_CONSTANT("FTP_MOREDATA", PHP_FTP_MOREDATA, CONST_CS | CONST_PERSISTENT);
296+
}
297+
283298
static zend_class_entry *register_class_FTP_Connection(void)
284299
{
285300
zend_class_entry ce, *class_entry;

ext/ftp/php_ftp.c

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -118,17 +118,8 @@ PHP_MINIT_FUNCTION(ftp)
118118
ftp_object_handlers.free_obj = ftp_object_destroy;
119119
ftp_object_handlers.clone_obj = NULL;
120120

121-
REGISTER_LONG_CONSTANT("FTP_ASCII", FTPTYPE_ASCII, CONST_PERSISTENT | CONST_CS);
122-
REGISTER_LONG_CONSTANT("FTP_TEXT", FTPTYPE_ASCII, CONST_PERSISTENT | CONST_CS);
123-
REGISTER_LONG_CONSTANT("FTP_BINARY", FTPTYPE_IMAGE, CONST_PERSISTENT | CONST_CS);
124-
REGISTER_LONG_CONSTANT("FTP_IMAGE", FTPTYPE_IMAGE, CONST_PERSISTENT | CONST_CS);
125-
REGISTER_LONG_CONSTANT("FTP_AUTORESUME", PHP_FTP_AUTORESUME, CONST_PERSISTENT | CONST_CS);
126-
REGISTER_LONG_CONSTANT("FTP_TIMEOUT_SEC", PHP_FTP_OPT_TIMEOUT_SEC, CONST_PERSISTENT | CONST_CS);
127-
REGISTER_LONG_CONSTANT("FTP_AUTOSEEK", PHP_FTP_OPT_AUTOSEEK, CONST_PERSISTENT | CONST_CS);
128-
REGISTER_LONG_CONSTANT("FTP_USEPASVADDRESS", PHP_FTP_OPT_USEPASVADDRESS, CONST_PERSISTENT | CONST_CS);
129-
REGISTER_LONG_CONSTANT("FTP_FAILED", PHP_FTP_FAILED, CONST_PERSISTENT | CONST_CS);
130-
REGISTER_LONG_CONSTANT("FTP_FINISHED", PHP_FTP_FINISHED, CONST_PERSISTENT | CONST_CS);
131-
REGISTER_LONG_CONSTANT("FTP_MOREDATA", PHP_FTP_MOREDATA, CONST_PERSISTENT | CONST_CS);
121+
register_ftp_consts(module_number);
122+
132123
return SUCCESS;
133124
}
134125

0 commit comments

Comments
 (0)