mirror of
https://github.com/zebrajr/postgres.git
synced 2025-12-07 12:20:31 +01:00
The following functions use a mix of bytea and text arguments, but their C internals always used PG_GETARG_BYTEA_PP(), creating an incorrect mix with the argument types expected by encrypt_internal(): - pgp_sym_encrypt_bytea(bytea,text[,text]) - pgp_sym_encrypt(text,text[,text]) - pgp_sym_decrypt_bytea(bytea,text[,text]) - pgp_sym_decrypt(bytea,text[,text]) - pgp_pub_encrypt_bytea(bytea,bytea[,text]) - pgp_pub_encrypt(text,bytea[,text]) - pgp_pub_decrypt_bytea(bytea, bytea[,text[,text]]) - pgp_pub_decrypt(bytea,bytea[,text[,text]]) This commit fixes the inconsistencies between the PG_GETARG*() macros and the argument types of each function. Both BYTEA_PP() and TEXT_PP() rely on PG_DETOAST_DATUM_PACKED(), that returns an unaligned pointer, so this was not leading to an actual problem as far as I know, but let's be consistent. Author: Shihao Zhong Discussion: https://postgr.es/m/CAGRkXqRfiWT--DzVPx_UGpNHTt0YT5Jo8eV2CtT56jNP=QpXSQ@mail.gmail.com |
||
|---|---|---|
| .. | ||
| expected | ||
| sql | ||
| .gitignore | ||
| crypt-blowfish.c | ||
| crypt-des.c | ||
| crypt-gensalt.c | ||
| crypt-md5.c | ||
| Makefile | ||
| mbuf.c | ||
| mbuf.h | ||
| meson.build | ||
| openssl.c | ||
| pgcrypto--1.1--1.2.sql | ||
| pgcrypto--1.2--1.3.sql | ||
| pgcrypto--1.3.sql | ||
| pgcrypto--1.0--1.1.sql | ||
| pgcrypto.c | ||
| pgcrypto.control | ||
| pgcrypto.h | ||
| pgp-armor.c | ||
| pgp-cfb.c | ||
| pgp-compress.c | ||
| pgp-decrypt.c | ||
| pgp-encrypt.c | ||
| pgp-info.c | ||
| pgp-mpi-openssl.c | ||
| pgp-mpi.c | ||
| pgp-pgsql.c | ||
| pgp-pubdec.c | ||
| pgp-pubenc.c | ||
| pgp-pubkey.c | ||
| pgp-s2k.c | ||
| pgp.c | ||
| pgp.h | ||
| px-crypt.c | ||
| px-crypt.h | ||
| px-hmac.c | ||
| px.c | ||
| px.h | ||