Skip to content

Commit 66f3b5f

Browse files
authored
Declare main constants in stubs - part 3 (#9731)
1 parent f6ef5fb commit 66f3b5f

File tree

7 files changed

+150
-60
lines changed

7 files changed

+150
-60
lines changed

main/main.c

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2121,9 +2121,6 @@ zend_result php_module_startup(sapi_module_struct *sf, zend_module_entry *additi
21212121
REGISTER_MAIN_STRINGL_CONSTANT("PHP_BINARY", "", 0, CONST_PERSISTENT | CONST_CS | CONST_NO_FILE_CACHE);
21222122
}
21232123

2124-
php_output_register_constants();
2125-
php_rfc1867_register_constants();
2126-
21272124
/* this will read in php.ini, set up the configuration parameters,
21282125
load zend extensions and register php function extensions
21292126
to be loaded later */

main/main.stub.php

Lines changed: 108 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -234,3 +234,111 @@
234234
*/
235235
const PHP_WINDOWS_NT_WORKSTATION = UNKNOWN;
236236
#endif
237+
238+
/**
239+
* @var int
240+
* @cvalue PHP_OUTPUT_HANDLER_START
241+
*/
242+
const PHP_OUTPUT_HANDLER_START = UNKNOWN;
243+
/**
244+
* @var int
245+
* @cvalue PHP_OUTPUT_HANDLER_WRITE
246+
*/
247+
const PHP_OUTPUT_HANDLER_WRITE = UNKNOWN;
248+
/**
249+
* @var int
250+
* @cvalue PHP_OUTPUT_HANDLER_FLUSH
251+
*/
252+
const PHP_OUTPUT_HANDLER_FLUSH = UNKNOWN;
253+
/**
254+
* @var int
255+
* @cvalue PHP_OUTPUT_HANDLER_CLEAN
256+
*/
257+
const PHP_OUTPUT_HANDLER_CLEAN = UNKNOWN;
258+
/**
259+
* @var int
260+
* @cvalue PHP_OUTPUT_HANDLER_FINAL
261+
*/
262+
const PHP_OUTPUT_HANDLER_FINAL = UNKNOWN;
263+
/**
264+
* @var int
265+
* @cvalue PHP_OUTPUT_HANDLER_WRITE
266+
*/
267+
const PHP_OUTPUT_HANDLER_CONT = UNKNOWN;
268+
/**
269+
* @var int
270+
* @cvalue PHP_OUTPUT_HANDLER_FINAL
271+
*/
272+
const PHP_OUTPUT_HANDLER_END = UNKNOWN;
273+
274+
/**
275+
* @var int
276+
* @cvalue PHP_OUTPUT_HANDLER_CLEANABLE
277+
*/
278+
const PHP_OUTPUT_HANDLER_CLEANABLE = UNKNOWN;
279+
/**
280+
* @var int
281+
* @cvalue PHP_OUTPUT_HANDLER_FLUSHABLE
282+
*/
283+
const PHP_OUTPUT_HANDLER_FLUSHABLE = UNKNOWN;
284+
/**
285+
* @var int
286+
* @cvalue PHP_OUTPUT_HANDLER_REMOVABLE
287+
*/
288+
const PHP_OUTPUT_HANDLER_REMOVABLE = UNKNOWN;
289+
/**
290+
* @var int
291+
* @cvalue PHP_OUTPUT_HANDLER_STDFLAGS
292+
*/
293+
const PHP_OUTPUT_HANDLER_STDFLAGS = UNKNOWN;
294+
/**
295+
* @var int
296+
* @cvalue PHP_OUTPUT_HANDLER_STARTED
297+
*/
298+
const PHP_OUTPUT_HANDLER_STARTED = UNKNOWN;
299+
/**
300+
* @var int
301+
* @cvalue PHP_OUTPUT_HANDLER_DISABLED
302+
*/
303+
const PHP_OUTPUT_HANDLER_DISABLED = UNKNOWN;
304+
305+
/**
306+
* @var int
307+
* @cvalue PHP_UPLOAD_ERROR_OK
308+
*/
309+
const UPLOAD_ERR_OK = UNKNOWN;
310+
/**
311+
* @var int
312+
* @cvalue PHP_UPLOAD_ERROR_A
313+
*/
314+
const UPLOAD_ERR_INI_SIZE = UNKNOWN;
315+
/**
316+
* @var int
317+
* @cvalue PHP_UPLOAD_ERROR_B
318+
*/
319+
const UPLOAD_ERR_FORM_SIZE = UNKNOWN;
320+
/**
321+
* @var int
322+
* @cvalue PHP_UPLOAD_ERROR_C
323+
*/
324+
const UPLOAD_ERR_PARTIAL = UNKNOWN;
325+
/**
326+
* @var int
327+
* @cvalue PHP_UPLOAD_ERROR_D
328+
*/
329+
const UPLOAD_ERR_NO_FILE = UNKNOWN;
330+
/**
331+
* @var int
332+
* @cvalue PHP_UPLOAD_ERROR_E
333+
*/
334+
const UPLOAD_ERR_NO_TMP_DIR = UNKNOWN;
335+
/**
336+
* @var int
337+
* @cvalue PHP_UPLOAD_ERROR_F
338+
*/
339+
const UPLOAD_ERR_CANT_WRITE = UNKNOWN;
340+
/**
341+
* @var int
342+
* @cvalue PHP_UPLOAD_ERROR_X
343+
*/
344+
const UPLOAD_ERR_EXTENSION = UNKNOWN;

main/main_arginfo.h

Lines changed: 22 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

main/output.c

Lines changed: 0 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -202,26 +202,6 @@ PHPAPI void php_output_deactivate(void)
202202
}
203203
/* }}} */
204204

205-
/* {{{ void php_output_register_constants() */
206-
PHPAPI void php_output_register_constants(void)
207-
{
208-
REGISTER_MAIN_LONG_CONSTANT("PHP_OUTPUT_HANDLER_START", PHP_OUTPUT_HANDLER_START, CONST_CS | CONST_PERSISTENT);
209-
REGISTER_MAIN_LONG_CONSTANT("PHP_OUTPUT_HANDLER_WRITE", PHP_OUTPUT_HANDLER_WRITE, CONST_CS | CONST_PERSISTENT);
210-
REGISTER_MAIN_LONG_CONSTANT("PHP_OUTPUT_HANDLER_FLUSH", PHP_OUTPUT_HANDLER_FLUSH, CONST_CS | CONST_PERSISTENT);
211-
REGISTER_MAIN_LONG_CONSTANT("PHP_OUTPUT_HANDLER_CLEAN", PHP_OUTPUT_HANDLER_CLEAN, CONST_CS | CONST_PERSISTENT);
212-
REGISTER_MAIN_LONG_CONSTANT("PHP_OUTPUT_HANDLER_FINAL", PHP_OUTPUT_HANDLER_FINAL, CONST_CS | CONST_PERSISTENT);
213-
REGISTER_MAIN_LONG_CONSTANT("PHP_OUTPUT_HANDLER_CONT", PHP_OUTPUT_HANDLER_WRITE, CONST_CS | CONST_PERSISTENT);
214-
REGISTER_MAIN_LONG_CONSTANT("PHP_OUTPUT_HANDLER_END", PHP_OUTPUT_HANDLER_FINAL, CONST_CS | CONST_PERSISTENT);
215-
216-
REGISTER_MAIN_LONG_CONSTANT("PHP_OUTPUT_HANDLER_CLEANABLE", PHP_OUTPUT_HANDLER_CLEANABLE, CONST_CS | CONST_PERSISTENT);
217-
REGISTER_MAIN_LONG_CONSTANT("PHP_OUTPUT_HANDLER_FLUSHABLE", PHP_OUTPUT_HANDLER_FLUSHABLE, CONST_CS | CONST_PERSISTENT);
218-
REGISTER_MAIN_LONG_CONSTANT("PHP_OUTPUT_HANDLER_REMOVABLE", PHP_OUTPUT_HANDLER_REMOVABLE, CONST_CS | CONST_PERSISTENT);
219-
REGISTER_MAIN_LONG_CONSTANT("PHP_OUTPUT_HANDLER_STDFLAGS", PHP_OUTPUT_HANDLER_STDFLAGS, CONST_CS | CONST_PERSISTENT);
220-
REGISTER_MAIN_LONG_CONSTANT("PHP_OUTPUT_HANDLER_STARTED", PHP_OUTPUT_HANDLER_STARTED, CONST_CS | CONST_PERSISTENT);
221-
REGISTER_MAIN_LONG_CONSTANT("PHP_OUTPUT_HANDLER_DISABLED", PHP_OUTPUT_HANDLER_DISABLED, CONST_CS | CONST_PERSISTENT);
222-
}
223-
/* }}} */
224-
225205
/* {{{ void php_output_set_status(int status)
226206
* Used by SAPIs to disable output */
227207
PHPAPI void php_output_set_status(int status)

main/php_output.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -186,8 +186,6 @@ PHPAPI void php_output_startup(void);
186186
/* MSHUTDOWN */
187187
PHPAPI void php_output_shutdown(void);
188188

189-
PHPAPI void php_output_register_constants(void);
190-
191189
/* RINIT */
192190
PHPAPI int php_output_activate(void);
193191
/* RSHUTDOWN */

main/rfc1867.c

Lines changed: 10 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -59,29 +59,6 @@ static void safe_php_register_variable(char *var, char *strval, size_t val_len,
5959
/* The longest anonymous name */
6060
#define MAX_SIZE_ANONNAME 33
6161

62-
/* Errors */
63-
#define UPLOAD_ERROR_OK 0 /* File upload successful */
64-
#define UPLOAD_ERROR_A 1 /* Uploaded file exceeded upload_max_filesize */
65-
#define UPLOAD_ERROR_B 2 /* Uploaded file exceeded MAX_FILE_SIZE */
66-
#define UPLOAD_ERROR_C 3 /* Partially uploaded */
67-
#define UPLOAD_ERROR_D 4 /* No file uploaded */
68-
#define UPLOAD_ERROR_E 6 /* Missing /tmp or similar directory */
69-
#define UPLOAD_ERROR_F 7 /* Failed to write file to disk */
70-
#define UPLOAD_ERROR_X 8 /* File upload stopped by extension */
71-
72-
void php_rfc1867_register_constants(void) /* {{{ */
73-
{
74-
REGISTER_MAIN_LONG_CONSTANT("UPLOAD_ERR_OK", UPLOAD_ERROR_OK, CONST_CS | CONST_PERSISTENT);
75-
REGISTER_MAIN_LONG_CONSTANT("UPLOAD_ERR_INI_SIZE", UPLOAD_ERROR_A, CONST_CS | CONST_PERSISTENT);
76-
REGISTER_MAIN_LONG_CONSTANT("UPLOAD_ERR_FORM_SIZE", UPLOAD_ERROR_B, CONST_CS | CONST_PERSISTENT);
77-
REGISTER_MAIN_LONG_CONSTANT("UPLOAD_ERR_PARTIAL", UPLOAD_ERROR_C, CONST_CS | CONST_PERSISTENT);
78-
REGISTER_MAIN_LONG_CONSTANT("UPLOAD_ERR_NO_FILE", UPLOAD_ERROR_D, CONST_CS | CONST_PERSISTENT);
79-
REGISTER_MAIN_LONG_CONSTANT("UPLOAD_ERR_NO_TMP_DIR", UPLOAD_ERROR_E, CONST_CS | CONST_PERSISTENT);
80-
REGISTER_MAIN_LONG_CONSTANT("UPLOAD_ERR_CANT_WRITE", UPLOAD_ERROR_F, CONST_CS | CONST_PERSISTENT);
81-
REGISTER_MAIN_LONG_CONSTANT("UPLOAD_ERR_EXTENSION", UPLOAD_ERROR_X, CONST_CS | CONST_PERSISTENT);
82-
}
83-
/* }}} */
84-
8562
static void normalize_protected_variable(char *varname) /* {{{ */
8663
{
8764
char *s = varname, *index = NULL, *indexend = NULL, *p;
@@ -979,7 +956,7 @@ SAPI_API SAPI_POST_HANDLER_FUNC(rfc1867_post_handler) /* {{{ */
979956
#if DEBUG_FILE_UPLOAD
980957
sapi_module.sapi_error(E_NOTICE, "No file uploaded");
981958
#endif
982-
cancel_upload = UPLOAD_ERROR_D;
959+
cancel_upload = PHP_UPLOAD_ERROR_D;
983960
}
984961

985962
offset = 0;
@@ -998,7 +975,7 @@ SAPI_API SAPI_POST_HANDLER_FUNC(rfc1867_post_handler) /* {{{ */
998975
upload_cnt--;
999976
if (fd == -1) {
1000977
sapi_module.sapi_error(E_WARNING, "File upload error - unable to create a temporary file");
1001-
cancel_upload = UPLOAD_ERROR_E;
978+
cancel_upload = PHP_UPLOAD_ERROR_E;
1002979
}
1003980
}
1004981
}
@@ -1014,7 +991,7 @@ SAPI_API SAPI_POST_HANDLER_FUNC(rfc1867_post_handler) /* {{{ */
1014991
event_file_data.length = blen;
1015992
event_file_data.newlength = &blen;
1016993
if (php_rfc1867_callback(MULTIPART_EVENT_FILE_DATA, &event_file_data, &event_extra_data) == FAILURE) {
1017-
cancel_upload = UPLOAD_ERROR_X;
994+
cancel_upload = PHP_UPLOAD_ERROR_X;
1018995
continue;
1019996
}
1020997
}
@@ -1023,12 +1000,12 @@ SAPI_API SAPI_POST_HANDLER_FUNC(rfc1867_post_handler) /* {{{ */
10231000
#if DEBUG_FILE_UPLOAD
10241001
sapi_module.sapi_error(E_NOTICE, "upload_max_filesize of " ZEND_LONG_FMT " bytes exceeded - file [%s=%s] not saved", PG(upload_max_filesize), param, filename);
10251002
#endif
1026-
cancel_upload = UPLOAD_ERROR_A;
1003+
cancel_upload = PHP_UPLOAD_ERROR_A;
10271004
} else if (max_file_size && ((zend_long)(total_bytes+blen) > max_file_size)) {
10281005
#if DEBUG_FILE_UPLOAD
10291006
sapi_module.sapi_error(E_NOTICE, "MAX_FILE_SIZE of %" PRId64 " bytes exceeded - file [%s=%s] not saved", max_file_size, param, filename);
10301007
#endif
1031-
cancel_upload = UPLOAD_ERROR_B;
1008+
cancel_upload = PHP_UPLOAD_ERROR_B;
10321009
} else if (blen > 0) {
10331010
#ifdef PHP_WIN32
10341011
wlen = write(fd, buff, (unsigned int)blen);
@@ -1041,12 +1018,12 @@ SAPI_API SAPI_POST_HANDLER_FUNC(rfc1867_post_handler) /* {{{ */
10411018
#if DEBUG_FILE_UPLOAD
10421019
sapi_module.sapi_error(E_NOTICE, "write() failed - %s", strerror(errno));
10431020
#endif
1044-
cancel_upload = UPLOAD_ERROR_F;
1021+
cancel_upload = PHP_UPLOAD_ERROR_F;
10451022
} else if (wlen < blen) {
10461023
#if DEBUG_FILE_UPLOAD
10471024
sapi_module.sapi_error(E_NOTICE, "Only %zd bytes were written, expected to write %zd", wlen, blen);
10481025
#endif
1049-
cancel_upload = UPLOAD_ERROR_F;
1026+
cancel_upload = PHP_UPLOAD_ERROR_F;
10501027
} else {
10511028
total_bytes += wlen;
10521029
}
@@ -1065,7 +1042,7 @@ SAPI_API SAPI_POST_HANDLER_FUNC(rfc1867_post_handler) /* {{{ */
10651042
#if DEBUG_FILE_UPLOAD
10661043
sapi_module.sapi_error(E_NOTICE, "Missing mime boundary at the end of the data for file %s", filename[0] != '\0' ? filename : "");
10671044
#endif
1068-
cancel_upload = UPLOAD_ERROR_C;
1045+
cancel_upload = PHP_UPLOAD_ERROR_C;
10691046
}
10701047
#if DEBUG_FILE_UPLOAD
10711048
if (filename[0] != '\0' && total_bytes == 0 && !cancel_upload) {
@@ -1080,13 +1057,13 @@ SAPI_API SAPI_POST_HANDLER_FUNC(rfc1867_post_handler) /* {{{ */
10801057
event_file_end.temp_filename = temp_filename ? ZSTR_VAL(temp_filename) : NULL;
10811058
event_file_end.cancel_upload = cancel_upload;
10821059
if (php_rfc1867_callback(MULTIPART_EVENT_FILE_END, &event_file_end, &event_extra_data) == FAILURE) {
1083-
cancel_upload = UPLOAD_ERROR_X;
1060+
cancel_upload = PHP_UPLOAD_ERROR_X;
10841061
}
10851062
}
10861063

10871064
if (cancel_upload) {
10881065
if (temp_filename) {
1089-
if (cancel_upload != UPLOAD_ERROR_E) { /* file creation failed */
1066+
if (cancel_upload != PHP_UPLOAD_ERROR_E) { /* file creation failed */
10901067
unlink(ZSTR_VAL(temp_filename));
10911068
}
10921069
zend_string_release_ex(temp_filename, 0);

main/rfc1867.h

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,16 @@
2727
#define MULTIPART_EVENT_FILE_END 4
2828
#define MULTIPART_EVENT_END 5
2929

30+
/* Errors */
31+
#define PHP_UPLOAD_ERROR_OK 0 /* File upload successful */
32+
#define PHP_UPLOAD_ERROR_A 1 /* Uploaded file exceeded upload_max_filesize */
33+
#define PHP_UPLOAD_ERROR_B 2 /* Uploaded file exceeded MAX_FILE_SIZE */
34+
#define PHP_UPLOAD_ERROR_C 3 /* Partially uploaded */
35+
#define PHP_UPLOAD_ERROR_D 4 /* No file uploaded */
36+
#define PHP_UPLOAD_ERROR_E 6 /* Missing /tmp or similar directory */
37+
#define PHP_UPLOAD_ERROR_F 7 /* Failed to write file to disk */
38+
#define PHP_UPLOAD_ERROR_X 8 /* File upload stopped by extension */
39+
3040
typedef struct _multipart_event_start {
3141
size_t content_length;
3242
} multipart_event_start;
@@ -73,7 +83,6 @@ typedef char* (*php_rfc1867_basename_t)(const zend_encoding *encoding, char *str
7383
SAPI_API SAPI_POST_HANDLER_FUNC(rfc1867_post_handler);
7484

7585
PHPAPI void destroy_uploaded_files_hash(void);
76-
void php_rfc1867_register_constants(void);
7786
extern PHPAPI int (*php_rfc1867_callback)(unsigned int event, void *event_data, void **extra);
7887

7988
SAPI_API void php_rfc1867_set_multibyte_callbacks(

0 commit comments

Comments
 (0)