Commit Graph

496 Commits

Author SHA1 Message Date
Bob Weinand
f614fc6898 Fix bug #66015 by reverting "Removed operations on constant arrays." 2014-04-11 10:08:44 +02:00
Nikita Popov
eaf44ec397 Remove some usages of hashtable internals 2014-04-09 12:31:21 +02:00
Daniel Lowrey
2ee4c987e6 Support async pgsql connections and non-blocking queries
- New functions (each accepts a pgsql $connection resource):

  . pg_connect_poll
  . pg_socket
  . pg_consume_input
  . pg_flush

- Modified functions

  The following functions now additionally return zero if the
  underlying socket is set to non-blocking mode and the send
  operation does not complete immediately. Previously these
  functions returned only boolean TRUE/FALSE and blocked
  execution while polling until all data was sent:

  . pg_send_execute
  . pg_send_prepare
  . pg_send_query
  . pg_send_query_params

- New constants

  Used with pg_connect() to initiate an asynchronous connection
  attempt:

  . PGSQL_CONNECT_ASYNC

  Used with pg_connection_status() to determine the current state
  of an async connection attempt:

  . PGSQL_CONNECTION_STARTED
  . PGSQL_CONNECTION_MADE
  . PGSQL_CONNECTION_AWAITING_RESPONSE
  . PGSQL_CONNECTION_AUTH_OK
  . PGSQL_CONNECTION_SSL_STARTUP
  . PGSQL_CONNECTION_SETENV

  Used with pg_connect_poll() to determine the result of an
  async connection attempt:

  . PGSQL_POLLING_FAILED
  . PGSQL_POLLING_READING
  . PGSQL_POLLING_WRITING
  . PGSQL_POLLING_OK
  . PGSQL_POLLING_ACTIVE

- Polling via returned pg_socket() stream

  pg_socket() returns a read-only socket stream that may be
  cast to a file descriptor for select (and similar) polling
  operations. Blocking behavior of the pgsql connection socket
  can be controlled by calling stream_set_blocking() on the
  stream returned by pg_socket().
2014-03-17 06:31:15 -06:00
Anatol Belski
6877af3f71 simplify the metadata part 2014-02-17 10:20:36 +01:00
Yasuo Ohgaki
d8aa130296 Imprement FR #25854 Return value for pg_insert should be resource instead of bool 2014-02-17 06:36:54 +09:00
Yasuo Ohgaki
5fd6365c77 Implement FR #41146 - Add "description" with exteneded flag pg_meta_data().
pg_meta_data(resource $conn, string $table [, bool extended])
It also made pg_meta_data() return "is enum" always.
2014-02-17 06:24:10 +09:00
Yasuo Ohgaki
56854511d8 EXPERIMENTAL flags for pg_select/pg_insert/pg_update/pg_delete are removed.
Use string escape for exotic types that allows to handle any data types. i.e. Array, JSON, JSONB, etc will work.
Add escape only query for better performance which removes meta data look up. Limitations forced by pg_convert() can be avoided with this. PGSQL_DML_ESCAPE constant is added for it.
2014-02-16 14:11:21 +09:00
Yasuo Ohgaki
3f4134c00c Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed possbile injections against pg_insert()/pg_delete()/pg_update()/pg_select()
2014-02-16 10:47:32 +09:00
Yasuo Ohgaki
3fcdecf658 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed possbile injections against pg_insert()/pg_delete()/pg_update()/pg_select()
2014-02-16 10:45:50 +09:00
Yasuo Ohgaki
f275fdcf00 Fixed possbile injections against pg_insert()/pg_delete()/pg_update()/pg_select() 2014-02-16 10:45:15 +09:00
Yasuo Ohgaki
a12c896dba Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Refactor build_tablename()
2014-02-16 07:52:00 +09:00
Yasuo Ohgaki
f9537c2a0b Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Refactor build_tablename()
2014-02-16 07:51:50 +09:00
Yasuo Ohgaki
6f14b5ab41 Refactor build_tablename() 2014-02-16 07:51:27 +09:00
Yasuo Ohgaki
53f34bca76 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Revise encoding blacklist
2014-02-16 06:25:15 +09:00
Yasuo Ohgaki
8c9fd8fb53 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Revise encoding blacklist
2014-02-16 06:25:01 +09:00
Yasuo Ohgaki
9f251548ae Revise encoding blacklist 2014-02-16 06:21:39 +09:00
Felipe Pena
8cec20a565 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  - Fix ZTS build when HAVE_PQESCAPELITERAL is not set
  Update NEWS
  Update NEWS
2014-02-15 11:05:25 -02:00
Felipe Pena
a65a546640 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  - Fix ZTS build when HAVE_PQESCAPELITERAL is not set
  Update NEWS
2014-02-15 11:05:08 -02:00
Felipe Pena
9d84f6c06e - Fix ZTS build when HAVE_PQESCAPELITERAL is not set 2014-02-15 11:04:49 -02:00
Yasuo Ohgaki
5ff9089aeb Merge branch 'PHP-5.5' into PHP-5.6 2014-02-15 18:30:11 +09:00
Yasuo Ohgaki
6e0b8b4288 Merge branch 'PHP-5.4' into PHP-5.5 2014-02-15 18:29:36 +09:00
Yasuo Ohgaki
832c21cabf Refactor and cleanup. WS is cleaned up. Use -b if it is needed.
Added compatibility macros, PQescapeStringConn, PGSQLescapeLiteral/Identifier, PGSQLfree.
2014-02-15 18:20:58 +09:00
Anatol Belski
4247f624cb Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fixed missing usleep() prototype in pgsql
2014-01-22 11:53:56 +01:00
Anatol Belski
e67ef24227 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fixed missing usleep() prototype in pgsql
2014-01-22 11:53:32 +01:00
Anatol Belski
7bcf01f39a fixed missing usleep() prototype in pgsql 2014-01-22 11:52:52 +01:00
Yasuo Ohgaki
28be6aea9c Added pg_lo_truncate() and 64bit large object support from PostgreSQL 9.3 and up 2014-01-15 14:37:24 +09:00
Yasuo Ohgaki
c58329fccc Always initialize pg_version() result array elements to prevent failed test with older postgresql servers. Add missing client_encoding element. 2014-01-15 14:27:33 +09:00
Yasuo Ohgaki
d0924c2500 Fixed pg_version() crash with older postgresql 2014-01-15 13:32:15 +09:00
Yasuo Ohgaki
58dff7cee5 Made pg_version() return full connection info. 2014-01-14 10:10:48 +09:00
Xinchen Hui
c081ce628f Bump year 2014-01-03 11:08:10 +08:00
Xinchen Hui
47c9027772 Bump year 2014-01-03 11:06:16 +08:00
Xinchen Hui
c0d060f5c0 Bump year 2014-01-03 11:04:26 +08:00
Yasuo Ohgaki
6af3683a4c Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix Coverity issue reporting wrong sizeof()
2013-10-22 12:29:01 +09:00
Yasuo Ohgaki
1f5b1cfb2b Fix Coverity issue reporting wrong sizeof() 2013-10-22 12:27:18 +09:00
Matteo Beccati
908da14bd1 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed other compiler warnings
2013-08-22 15:34:11 +02:00
Matteo Beccati
d5987478a8 Fixed other compiler warnings 2013-08-22 15:33:54 +02:00
Matteo Beccati
4283f75c34 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed compiler warnings in ext/pgsql
  Fixed other compiler warnings in PDO_PGSQL
  Fixed compiler warning
2013-08-21 11:24:27 +02:00
Matteo Beccati
540f325664 Fixed compiler warnings in ext/pgsql 2013-08-21 11:24:12 +02:00
Anatol Belski
bab33f7e05 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  removed unused vars
2013-08-12 15:52:50 +02:00
Anatol Belski
72aacbf735 removed unused vars 2013-08-12 15:52:15 +02:00
Anatol Belski
87198989cd Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fixed strndup usage in the pgsql ext
2013-08-12 15:45:26 +02:00
Anatol Belski
4134ebec8e fixed strndup usage in the pgsql ext 2013-08-12 15:44:47 +02:00
Yasuo Ohgaki
cb8d1fc7f9 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #62978. pg_select()/etc may allow SQL injection when table name is user parameter, users are able to control table names.
2013-08-05 18:24:07 +09:00
Yasuo Ohgaki
f718684a6c Fixed bug #62978. pg_select()/etc may allow SQL injection when table name is user parameter, users are able to control table names. 2013-08-05 18:23:15 +09:00
Yasuo Ohgaki
ef3d813d2c Fixed bug #65336 2013-07-27 05:54:33 +09:00
Yasuo Ohgaki
1d7b6970f2 Fixed bug #65336 2013-07-27 05:54:09 +09:00
Veres Lajos
4749457a49 HASH_KEY_NON_EXISTANT fix 2013-07-21 20:09:53 -07:00
Yasuo Ohgaki
002f3ff4dc Inprove pg_unescape_bytea() error message 2013-07-13 06:05:17 +09:00
Yasuo Ohgaki
2bc8271b29 Add warning to pg_unescape_bytea() when invalid parameter is passed 2013-07-08 18:51:37 +09:00
Andrey Hristov
781be5f1d7 Merge branch 'PHP-5.4' into PHP-5.5
Conflicts:
	NEWS
2013-06-26 16:50:08 +02:00