1. 17 8月, 2012 7 次提交
  2. 16 8月, 2012 19 次提交
  3. 15 8月, 2012 12 次提交
    • B
      Document that foreign "version" and "type" values are only useful to · fc5f2005
      Bruce Momjian 提交于
      certain foreign data wrappers.
      fc5f2005
    • T
      Disallow extensions from owning the schema they are assigned to. · 4d642b59
      Tom Lane 提交于
      This situation creates a dependency loop that confuses pg_dump and probably
      other things.  Moreover, since the mental model is that the extension
      "contains" schemas it owns, but "is contained in" its extschema (even
      though neither is strictly true), having both true at once is confusing for
      people too.  So prevent the situation from being set up.
      
      Reported and patched by Thom Brown.  Back-patch to 9.1 where extensions
      were added.
      4d642b59
    • B
      Properly escape usernames in initdb, so names with single-quotes are · a9732965
      Bruce Momjian 提交于
      supported.  Also add assert to catch future breakage.
      
      Also, improve documentation that "double"-quotes must be used in
      pg_hba.conf (not single quotes).
      a9732965
    • T
      Resurrect the "last ditch" code path in join_search_one_level(). · eb919e8f
      Tom Lane 提交于
      This essentially reverts commit e54b10a6,
      in which I'd decided that the "last ditch" join logic was useless.  The
      folly of that is now exposed by a report from Pavel Stehule: although the
      function should always find at least one join in a self-contained join
      problem, it can still fail to do so in a sub-problem created by artificial
      from_collapse_limit or join_collapse_limit constraints.  Adjust the
      comments to describe this, and simplify the code a bit to match the new
      coding of the earlier loop in the function.
      
      I'm not terribly happy about this: I still subscribe to the opinion stated
      in the previous commit message that the "last ditch" code can obscure logic
      bugs elsewhere.  But the alternative seems to be to complicate the earlier
      tests for does-this-relation-have-a-join-clause to the point where they can
      tell whether the join clauses link outside the current join sub-problem.
      And that looks messy, slow, and possibly a source of bugs in itself.
      In any case, now is not the time to be inserting experimental code into
      9.2, so let's just go back to the time-tested solution.
      eb919e8f
    • B
      Add more limited large object trigger example. · 864de654
      Bruce Momjian 提交于
      864de654
    • B
      Add doc example of restricting large object trigger firing to only · 9e84cccf
      Bruce Momjian 提交于
      updates of the column of interest.
      9e84cccf
    • T
      Update release notes for 9.1.5, 9.0.9, 8.4.13, 8.3.20. · e45ae401
      Tom Lane 提交于
      e45ae401
    • T
      Prevent access to external files/URLs via contrib/xml2's xslt_process(). · adc97d03
      Tom Lane 提交于
      libxslt offers the ability to read and write both files and URLs through
      stylesheet commands, thus allowing unprivileged database users to both read
      and write data with the privileges of the database server.  Disable that
      through proper use of libxslt's security options.
      
      Also, remove xslt_process()'s ability to fetch documents and stylesheets
      from external files/URLs.  While this was a documented "feature", it was
      long regarded as a terrible idea.  The fix for CVE-2012-3489 broke that
      capability, and rather than expend effort on trying to fix it, we're just
      going to summarily remove it.
      
      While the ability to write as well as read makes this security hole
      considerably worse than CVE-2012-3489, the problem is mitigated by the fact
      that xslt_process() is not available unless contrib/xml2 is installed,
      and the longstanding warnings about security risks from that should have
      discouraged prudent DBAs from installing it in security-exposed databases.
      
      Reported and fixed by Peter Eisentraut.
      
      Security: CVE-2012-3488
      adc97d03
    • T
      Prevent access to external files/URLs via XML entity references. · 17351fce
      Tom Lane 提交于
      xml_parse() would attempt to fetch external files or URLs as needed to
      resolve DTD and entity references in an XML value, thus allowing
      unprivileged database users to attempt to fetch data with the privileges
      of the database server.  While the external data wouldn't get returned
      directly to the user, portions of it could be exposed in error messages
      if the data didn't parse as valid XML; and in any case the mere ability
      to check existence of a file might be useful to an attacker.
      
      The ideal solution to this would still allow fetching of references that
      are listed in the host system's XML catalogs, so that documents can be
      validated according to installed DTDs.  However, doing that with the
      available libxml2 APIs appears complex and error-prone, so we're not going
      to risk it in a security patch that necessarily hasn't gotten wide review.
      So this patch merely shuts off all access, causing any external fetch to
      silently expand to an empty string.  A future patch may improve this.
      
      In HEAD and 9.2, also suppress warnings about undefined entities, which
      would otherwise occur as a result of not loading referenced DTDs.  Previous
      branches don't show such warnings anyway, due to different error handling
      arrangements.
      
      Credit to Noah Misch for first reporting the problem, and for much work
      towards a solution, though this simplistic approach was not his preference.
      Also thanks to Daniel Veillard for consultation.
      
      Security: CVE-2012-3489
      17351fce
    • B
      Revert "commit_delay" change; just add comment that we don't have · 03bda453
      Bruce Momjian 提交于
      a microsecond specification.
      03bda453
    • B
      Add pg_settings units display for "commit_delay" (ms). · e7472744
      Bruce Momjian 提交于
      Also remove unnecessary units designation in postgresql.conf.sample.
      e7472744
    • B
      In documentation, change "recommendable" to "recommended", per · 1d96cf94
      Bruce Momjian 提交于
      consultation with word definitions.
      
      Backpatch to 9.2.
      1d96cf94
  4. 14 8月, 2012 1 次提交
    • T
      Update time zone data files to tzdata release 2012e. · 51fd748e
      Tom Lane 提交于
      DST law changes in Morocco; Tokelau has relocated to the other side of
      the International Date Line; and apparently Olson had Tokelau's GMT
      offset wrong by an hour even before that.
      
      There are also a large number of non-significant changes in this update.
      Upstream took the opportunity to remove trailing whitespace, and the
      SCCS-style version numbers on the individual files are gone too.
      51fd748e
  5. 13 8月, 2012 1 次提交
    • H
      Add runtime checks for number of query parameters passed to libpq functions. · f86e6ba4
      Heikki Linnakangas 提交于
      The maximum number of parameters supported by the FE/BE protocol is 65535,
      as it's transmitted as a 16-bit unsigned integer. However, the nParams
      arguments to libpq functions are all of type 'int'. We can't change the
      signature of libpq functions, but a simple bounds check is in order to make
      it more clear what's going wrong if you try to pass more than 65535
      parameters.
      
      Per complaint from Jim Vanns.
      f86e6ba4