~ubuntu-branches/ubuntu/raring/php5/raring

« back to all changes in this revision

Viewing changes to ext/mbstring/mbstring.h

  • Committer: Package Import Robot
  • Author(s): Clint Byrum
  • Date: 2012-06-18 16:10:26 UTC
  • mfrom: (1.1.24) (0.3.58 sid)
  • Revision ID: package-import@ubuntu.com-20120618161026-hg1fc5r9z1a4hlqz
Tags: 5.4.4-1ubuntu1
* Merge from Debian unstable. Remaining changes:
  - d/rules: Simplify apache config settings since we never build 
    interbase or firebird.
  - debian/rules: export DEB_HOST_MULTIARCH properly.
  - Add build-dependency on lemon, which we now need.
  - Dropped firebird2.1-dev, libc-client-dev, libmcrypt-dev as it is in universe.
  - Dropped libcurl-dev not in the archive.
  - debian/control: replace build-depends on mysql-server with
    mysql-server-core-5.5 and mysql-client-5.5 to avoid upstart and
    mysql-server-5.5 postinst confusion with starting up multiple
    mysqlds listening on the same port.
  - Dropped php5-imap, php5-interbase, php5-mcrypt since we have versions
    already in universe.
  - Dropped libonig-dev and libqgdbm since its in universe. (libonig MIR
    has been declined due to an inactive upstream. So this is probably
    a permanent change).
  - modulelist: Drop imap, interbase, sybase, and mcrypt.
  - debian/rules:
    * Dropped building of mcrypt, imap, and interbase.
    * Install apport hook for php5.
    * stop mysql instance on clean just in case we failed in tests
* Dropped Changes:
  * d/rules: enable Suhosin patch with PHP5_SUHOSIN=yes -- Upstream suhosin
    has been slow to adopt PHP 5.4, and is showing signs of disengagement.
    Therefore, we will follow Debian's lead and drop Suhosin for now.
  - d/control: build-depend on mysql 5.5 instead of 5.1 for running tests.
    -- Debian just deps on mysql-server
  - Suggest php5-suhosin rather than recommends. -- Dropping suhosin
  - d/setup-mysql.sh: modify to work with mysql 5.5 differences -- superseded
    in Debian.
  - Only build php5-sqlite for sqlite3, dropping the obsolete sqlite2. --
    superseded in Debian
  - d/maxlifetime: Improve maxlifetime script to scan for more SAPIs and 
    scan all *.ini in conf.d directory. -- Change came from Debian
  - d/libapache2-mod-php5.postinst,libapache2-mod-php5filter.postinst: 
    Restart apache on first install to ensure module is fully enabled.
    -- Change came from Debian
  - debian/patches/php5-CVE-2012-1823.patch: filter query strings that
    are prefixed with '-' -- Fixed upstream
  - debian/control: Recommend php5-dev for php-pear. -- This was a poorly
    conceived idea anyway.
  - Pre-Depend on a new enough version of dpkg for dpkg-maintscript-helper
    rather than checking whether it exists at run-time, leading to more
    predictable behaviour on upgrades. -- Applied in Debian
  - d/p/gd-multiarch-fix.patch: superseded
* d/NEWS: add note explaining that SUHOSIN is no longer enabled in the
  Ubuntu packages.

Show diffs side-by-side

added added

removed removed

Lines of Context:
16
16
   +----------------------------------------------------------------------+
17
17
 */
18
18
 
19
 
/* $Id: mbstring.h 321634 2012-01-01 13:15:04Z felipe $ */
 
19
/* $Id$ */
20
20
 
21
21
/*
22
22
 * PHP 4 Multibyte String module "mbstring" (currently only for Japanese)
128
128
PHP_FUNCTION(mb_get_info);
129
129
PHP_FUNCTION(mb_check_encoding);
130
130
 
131
 
MBSTRING_API int php_mb_encoding_translation(TSRMLS_D);
132
 
 
133
131
MBSTRING_API char *php_mb_safe_strrchr_ex(const char *s, unsigned int c,
134
132
                                    size_t nbytes, const mbfl_encoding *enc);
135
133
MBSTRING_API char *php_mb_safe_strrchr(const char *s, unsigned int c,
136
134
                                 size_t nbytes TSRMLS_DC);
137
 
MBSTRING_API char *php_mb_strrchr(const char *s, char c TSRMLS_DC);
138
135
 
139
136
MBSTRING_API char * php_mb_convert_encoding(const char *input, size_t length,
140
137
                                      const char *_to_encoding,
146
143
MBSTRING_API size_t php_mb_mbchar_bytes_ex(const char *s, const mbfl_encoding *enc);
147
144
MBSTRING_API size_t php_mb_mbchar_bytes(const char *s TSRMLS_DC);
148
145
 
149
 
MBSTRING_API size_t php_mb_gpc_mbchar_bytes(const char *s TSRMLS_DC);
150
 
 
151
146
MBSTRING_API int php_mb_encoding_detector_ex(const char *arg_string, int arg_length, 
152
147
                                                                                         char *arg_list TSRMLS_DC);
153
148
 
154
149
MBSTRING_API int php_mb_encoding_converter_ex(char **str, int *len, const char *encoding_to, 
155
150
                                                                                          const char *encoding_from TSRMLS_DC);
156
 
MBSTRING_API int php_mb_gpc_encoding_converter(char **str, int *len, int num, const char *encoding_to, const char *encoding_from TSRMLS_DC);
157
 
 
158
 
MBSTRING_API int php_mb_gpc_encoding_detector(char **arg_string, int *arg_length, int num, char *arg_list TSRMLS_DC);
159
 
 
160
151
MBSTRING_API int php_mb_stripos(int mode, const char *old_haystack, unsigned int old_haystack_len, const char *old_needle, unsigned int old_needle_len, long offset, const char *from_encoding TSRMLS_DC);
161
152
 
162
153
/* internal use only */
163
154
int _php_mb_ini_mbstring_internal_encoding_set(const char *new_value, uint new_value_length TSRMLS_DC);
164
155
 
165
156
ZEND_BEGIN_MODULE_GLOBALS(mbstring)
 
157
        char *internal_encoding_name;
166
158
        enum mbfl_no_language language;
167
 
        enum mbfl_no_encoding internal_encoding;
168
 
        enum mbfl_no_encoding current_internal_encoding;
169
 
#ifdef ZEND_MULTIBYTE
170
 
        enum mbfl_no_encoding *script_encoding_list;
171
 
        int script_encoding_list_size;
172
 
#endif /* ZEND_MULTIBYTE */
173
 
        enum mbfl_no_encoding http_output_encoding;
174
 
        enum mbfl_no_encoding current_http_output_encoding;
175
 
        enum mbfl_no_encoding http_input_identify;
176
 
        enum mbfl_no_encoding http_input_identify_get;
177
 
        enum mbfl_no_encoding http_input_identify_post;
178
 
        enum mbfl_no_encoding http_input_identify_cookie;
179
 
        enum mbfl_no_encoding http_input_identify_string;
180
 
        enum mbfl_no_encoding *http_input_list;
181
 
        int http_input_list_size;
182
 
        enum mbfl_no_encoding *detect_order_list;
183
 
        int detect_order_list_size;
184
 
        enum mbfl_no_encoding *current_detect_order_list;
185
 
        int current_detect_order_list_size;
 
159
        const mbfl_encoding *internal_encoding;
 
160
        const mbfl_encoding *current_internal_encoding;
 
161
        const mbfl_encoding *http_output_encoding;
 
162
        const mbfl_encoding *current_http_output_encoding;
 
163
        const mbfl_encoding *http_input_identify;
 
164
        const mbfl_encoding *http_input_identify_get;
 
165
        const mbfl_encoding *http_input_identify_post;
 
166
        const mbfl_encoding *http_input_identify_cookie;
 
167
        const mbfl_encoding *http_input_identify_string;
 
168
        const mbfl_encoding **http_input_list;
 
169
        size_t http_input_list_size;
 
170
        const mbfl_encoding **detect_order_list;
 
171
        size_t detect_order_list_size;
 
172
        const mbfl_encoding **current_detect_order_list;
 
173
        size_t current_detect_order_list_size;
186
174
        enum mbfl_no_encoding *default_detect_order_list;
187
 
        int default_detect_order_list_size;
 
175
        size_t default_detect_order_list_size;
188
176
        int filter_illegal_mode;
189
177
        int filter_illegal_substchar;
190
178
        int current_filter_illegal_mode;