> I've been experimenting with pgcrypto 0.3 (distributed with
> Postgres 7.1.0), and I think I've found a bug. > > I compiled Pgcrypto with OpenSSL, using gcc 2.95.4 and > OpenSSL 0.9.6a (the latest Debian 'unstable' packages). > web=> select encode(digest('blah', 'sha1'), 'base64'); > FATAL 1: pg_encode: overflow, encode estimate too small > pqReadData() -- backend closed the channel unexpectedly. > This probably means the backend terminated abnormally > before or while processing the request. > The connection to the server was lost. Attempting reset: Succeeded. > Is this a bug? Can it be fixed? This is a bug alright. And a silly one :) Marko Kreen
This commit is contained in:
parent
904ba3ff69
commit
5ee76ac8c0
@ -26,7 +26,7 @@
|
|||||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||||
* SUCH DAMAGE.
|
* SUCH DAMAGE.
|
||||||
*
|
*
|
||||||
* $Id: encode.c,v 1.4 2001/03/22 03:59:10 momjian Exp $
|
* $Id: encode.c,v 1.5 2001/05/13 02:17:09 momjian Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "postgres.h"
|
#include "postgres.h"
|
||||||
@ -349,7 +349,7 @@ hex_dec_len(uint srclen)
|
|||||||
uint
|
uint
|
||||||
b64_enc_len(uint srclen)
|
b64_enc_len(uint srclen)
|
||||||
{
|
{
|
||||||
return srclen + (srclen / 3) + (srclen / (76 / 2));
|
return srclen + (srclen + 2 / 3) + (srclen / (76 / 2)) + 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
uint
|
uint
|
||||||
|
Loading…
x
Reference in New Issue
Block a user