Fix write-past-buffer-end in ldapServiceLookup().
authorTom Lane <tgl@sss.pgh.pa.us>
Thu, 12 May 2011 15:56:38 +0000 (11:56 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Thu, 12 May 2011 15:56:38 +0000 (11:56 -0400)
commit8d0df2048f8c0663b41440eeaf73e8859c922e28
tree5d09c5915732b0d91c28cd3af0e863fee0204f53
parentc6eb5740b3c352fb10bf61bb4465332ae6b28ab1
Fix write-past-buffer-end in ldapServiceLookup().

The code to assemble ldap_get_values_len's output into a single string
wrote the terminating null one byte past where it should.  Fix that,
and make some other cosmetic adjustments to make the code a trifle more
readable and more in line with usual Postgres coding style.

Also, free the "result" string when done with it, to avoid a permanent
memory leak.

Bug report and patch by Albe Laurenz, cosmetic adjustments by me.
src/interfaces/libpq/fe-connect.c