forked from adsr/phpspy
-
Notifications
You must be signed in to change notification settings - Fork 0
/
php_structs_81.h
137 lines (119 loc) · 6.13 KB
/
php_structs_81.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
#ifndef __php_structs_81_h
#define __php_structs_81_h
#include <stdint.h>
typedef struct _zend_executor_globals_81 zend_executor_globals_81;
typedef struct _zend_execute_data_81 zend_execute_data_81;
typedef struct _zend_op_array_81 zend_op_array_81;
typedef union _zend_function_81 zend_function_81;
typedef struct _zend_class_entry_81 zend_class_entry_81;
typedef struct _zend_string_81 zend_string_81;
typedef struct _zend_op_81 zend_op_81;
typedef struct _sapi_request_info_81 sapi_request_info_81;
typedef struct _sapi_globals_struct_81 sapi_globals_struct_81;
typedef union _zend_value_81 zend_value_81;
typedef struct _zval_81 zval_81;
typedef struct _Bucket_81 Bucket_81;
typedef struct _zend_array_81 zend_array_81;
typedef struct _zend_alloc_globals_81 zend_alloc_globals_81;
typedef struct _zend_mm_heap_81 zend_mm_heap_81;
/* Assumes 8-byte pointers */
/* offset length */
struct __attribute__((__packed__)) _zend_array_81 {
uint8_t pad0[12]; /* 0 +12 */
uint32_t nTableMask; /* 12 +4 */
Bucket_81 *arData; /* 16 +8 */
uint32_t nNumUsed; /* 24 +4 */
uint32_t nNumOfElements; /* 28 +4 */
uint32_t nTableSize; /* 32 +4 */
};
struct __attribute__((__packed__)) _zend_executor_globals_81 {
uint8_t pad0[304]; /* 0 +304 */
zend_array_81 symbol_table; /* 304 +36 */
uint8_t pad1[148]; /* 340 +148 */
zend_execute_data_81 *current_execute_data; /* 488 +8 */
};
struct __attribute__((__packed__)) _zend_execute_data_81 {
zend_op_81 *opline; /* 0 +8 */
uint8_t pad0[16]; /* 8 +16 */
zend_function_81 *func; /* 24 +8 */
uint8_t pad1[16]; /* 32 +16 */
zend_execute_data_81 *prev_execute_data; /* 48 +8 */
zend_array_81 *symbol_table; /* 56 +8 */
};
struct __attribute__((__packed__)) _zend_op_array_81 {
uint8_t pad0[60]; /* 0 +60 */
int last_var; /* 60 +4 */
uint8_t pad1[40]; /* 64 +40 */
zend_string_81 **vars; /* 104 +8 */
uint8_t pad2[32]; /* 112 +32 */
zend_string_81 *filename; /* 144 +8 */
uint32_t line_start; /* 152 +4 */
};
union __attribute__((__packed__)) _zend_function_81 {
uint8_t type; /* 0 +1 */
struct {
uint8_t pad0[8]; /* 0 +8 */
zend_string_81 *function_name; /* 8 +8 */
zend_class_entry_81 *scope; /* 16 +8 */
} common;
zend_op_array_81 op_array; /* 0 +240 */
};
struct __attribute__((__packed__)) _zend_class_entry_81 {
uint8_t pad0[8]; /* 0 +8 */
zend_string_81 *name; /* 8 +8 */
};
struct __attribute__((__packed__)) _zend_string_81 {
uint8_t pad0[16]; /* 0 +16 */
size_t len; /* 16 +8 */
char val[1]; /* 24 +1 */
};
struct __attribute__((__packed__)) _zend_op_81 {
uint8_t pad0[24]; /* 0 +24 */
uint32_t lineno; /* 24 +4 */
};
struct __attribute__((__packed__)) _sapi_request_info_81 {
uint8_t pad0[8]; /* 0 +8 */
char *query_string; /* 8 +8 */
char *cookie_data; /* 16 +8 */
uint8_t pad1[8]; /* 24 +8 */
char *path_translated; /* 32 +8 */
char *request_uri; /* 40 +8 */
};
struct __attribute__((__packed__)) _sapi_globals_struct_81 {
uint8_t pad0[8]; /* 0 +8 */
sapi_request_info_81 request_info; /* 8 +48 */
uint8_t pad1[384]; /* 56 +384 */
double global_request_time; /* 440 +8 */
};
union __attribute__((__packed__)) _zend_value_81 {
long lval; /* 0 +8 */
double dval; /* 0 +8 */
zend_string_81 *str; /* 0 +8 */
zend_array_81 *arr; /* 0 +8 */
};
struct __attribute__((__packed__)) _zval_81 {
zend_value_81 value; /* 0 +8 */
union {
struct {
uint8_t type; /* 8 +1 */
uint8_t pad0[3]; /* 9 +3 */
} v;
} u1;
union {
uint32_t next; /* 12 +4 */
} u2;
};
struct __attribute__((__packed__)) _Bucket_81 {
zval_81 val; /* 0 +16 */
uint64_t h; /* 16 +8 */
zend_string_81 *key; /* 24 +8 */
};
struct __attribute__((__packed__)) _zend_alloc_globals_81 {
zend_mm_heap_81 *mm_heap; /* 0 +8 */
};
struct __attribute__((__packed__)) _zend_mm_heap_81 {
uint8_t pad0[16]; /* 0 +16 */
size_t size; /* 16 +8 */
size_t peak; /* 24 +8 */
};
#endif