diff --git a/contrib/pgcrypto/README.pgcrypto b/contrib/pgcrypto/README.pgcrypto index a33c36080fd7d5efb24d2d624ac06037d3d02be7..61b67880423415b0a492ac854d6df2aa6f556489 100644 --- a/contrib/pgcrypto/README.pgcrypto +++ b/contrib/pgcrypto/README.pgcrypto @@ -1,6 +1,6 @@ pgcrypto - cryptographic functions for PostgreSQL ================================================= -Marko Kreen +Marko Kreen // Note: this document is in asciidoc format. @@ -79,14 +79,7 @@ As standard in SQL, all functions return NULL, if any of the arguments are NULL. This may create security risks on careless usage. -2.3. Deprecated functions -~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -The `digest_exists()`, `hmac_exists()` and `cipher_exists()` functions -are deprecated. The plan is to remove them in PostgreSQL 8.2. - - -2.4. Security +2.3. Security ~~~~~~~~~~~~~~~ All the functions here run inside database server. That means that all @@ -714,4 +707,4 @@ http://www.cs.ut.ee/~helger/crypto/[]:: Collection of cryptology pointers. -// $PostgreSQL: pgsql/contrib/pgcrypto/README.pgcrypto,v 1.17 2006/08/05 00:29:11 neilc Exp $ +// $PostgreSQL: pgsql/contrib/pgcrypto/README.pgcrypto,v 1.18 2006/09/05 21:26:48 tgl Exp $ diff --git a/contrib/pgcrypto/pgcrypto.c b/contrib/pgcrypto/pgcrypto.c index ee976a69a07632534bf64baf01e53a7449744dd5..083b31d4c2eff65527c1efa74846d20ecc6134c1 100644 --- a/contrib/pgcrypto/pgcrypto.c +++ b/contrib/pgcrypto/pgcrypto.c @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $PostgreSQL: pgsql/contrib/pgcrypto/pgcrypto.c,v 1.22 2006/07/13 04:15:25 neilc Exp $ + * $PostgreSQL: pgsql/contrib/pgcrypto/pgcrypto.c,v 1.23 2006/09/05 21:26:48 tgl Exp $ */ #include "postgres.h" @@ -87,32 +87,6 @@ pg_digest(PG_FUNCTION_ARGS) PG_RETURN_BYTEA_P(res); } -/* check if given hash exists */ -PG_FUNCTION_INFO_V1(pg_digest_exists); - -Datum -pg_digest_exists(PG_FUNCTION_ARGS) -{ - text *name; - PX_MD *res; - - if (PG_ARGISNULL(0)) - PG_RETURN_NULL(); - - name = PG_GETARG_TEXT_P(0); - - res = find_provider(name, (PFN) px_find_digest, "Digest", 1); - - PG_FREE_IF_COPY(name, 0); - - if (res == NULL) - PG_RETURN_BOOL(false); - - res->free(res); - - PG_RETURN_BOOL(true); -} - /* SQL function: hmac(data:bytea, key:bytea, type:text) returns bytea */ PG_FUNCTION_INFO_V1(pg_hmac); @@ -158,32 +132,6 @@ pg_hmac(PG_FUNCTION_ARGS) PG_RETURN_BYTEA_P(res); } -/* check if given hmac type exists */ -PG_FUNCTION_INFO_V1(pg_hmac_exists); - -Datum -pg_hmac_exists(PG_FUNCTION_ARGS) -{ - text *name; - PX_HMAC *h; - - if (PG_ARGISNULL(0)) - PG_RETURN_NULL(); - - name = PG_GETARG_TEXT_P(0); - - h = find_provider(name, (PFN) px_find_hmac, "HMAC", 1); - - PG_FREE_IF_COPY(name, 0); - - if (h != NULL) - { - px_hmac_free(h); - PG_RETURN_BOOL(true); - } - PG_RETURN_BOOL(false); -} - /* SQL function: pg_gen_salt(text) returns text */ PG_FUNCTION_INFO_V1(pg_gen_salt); @@ -565,27 +513,6 @@ pg_random_bytes(PG_FUNCTION_ARGS) PG_RETURN_BYTEA_P(res); } -/* SQL function: pg_cipher_exists(text) returns bool */ -PG_FUNCTION_INFO_V1(pg_cipher_exists); - -Datum -pg_cipher_exists(PG_FUNCTION_ARGS) -{ - text *arg; - PX_Combo *c; - - if (PG_ARGISNULL(0)) - PG_RETURN_NULL(); - - arg = PG_GETARG_TEXT_P(0); - - c = find_provider(arg, (PFN) px_find_combo, "Cipher", 1); - if (c != NULL) - px_combo_free(c); - - PG_RETURN_BOOL((c != NULL) ? true : false); -} - static void * find_provider(text *name, PFN provider_lookup, diff --git a/contrib/pgcrypto/pgcrypto.h b/contrib/pgcrypto/pgcrypto.h index 3211fc4dedeb27c44b032852d0c83b14a41f42db..b011b06062e5ce519f2e52e8cecb7fda5015d47b 100644 --- a/contrib/pgcrypto/pgcrypto.h +++ b/contrib/pgcrypto/pgcrypto.h @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $PostgreSQL: pgsql/contrib/pgcrypto/pgcrypto.h,v 1.10 2006/07/13 04:15:25 neilc Exp $ + * $PostgreSQL: pgsql/contrib/pgcrypto/pgcrypto.h,v 1.11 2006/09/05 21:26:48 tgl Exp $ */ #ifndef _PG_CRYPTO_H @@ -36,9 +36,7 @@ /* exported functions */ Datum pg_digest(PG_FUNCTION_ARGS); -Datum pg_digest_exists(PG_FUNCTION_ARGS); Datum pg_hmac(PG_FUNCTION_ARGS); -Datum pg_hmac_exists(PG_FUNCTION_ARGS); Datum pg_gen_salt(PG_FUNCTION_ARGS); Datum pg_gen_salt_rounds(PG_FUNCTION_ARGS); Datum pg_crypt(PG_FUNCTION_ARGS); @@ -46,7 +44,6 @@ Datum pg_encrypt(PG_FUNCTION_ARGS); Datum pg_decrypt(PG_FUNCTION_ARGS); Datum pg_encrypt_iv(PG_FUNCTION_ARGS); Datum pg_decrypt_iv(PG_FUNCTION_ARGS); -Datum pg_cipher_exists(PG_FUNCTION_ARGS); Datum pg_random_bytes(PG_FUNCTION_ARGS); #endif diff --git a/contrib/pgcrypto/pgcrypto.sql.in b/contrib/pgcrypto/pgcrypto.sql.in index c442f6176c3c7653c19e503a40ede9966f0fc220..a33e69de2f26ff207931b95181e67de39b02a4f8 100644 --- a/contrib/pgcrypto/pgcrypto.sql.in +++ b/contrib/pgcrypto/pgcrypto.sql.in @@ -11,11 +11,6 @@ RETURNS bytea AS 'MODULE_PATHNAME', 'pg_digest' LANGUAGE C IMMUTABLE STRICT; -CREATE OR REPLACE FUNCTION digest_exists(text) -RETURNS bool -AS 'MODULE_PATHNAME', 'pg_digest_exists' -LANGUAGE C IMMUTABLE STRICT; - CREATE OR REPLACE FUNCTION hmac(text, text, text) RETURNS bytea AS 'MODULE_PATHNAME', 'pg_hmac' @@ -26,11 +21,6 @@ RETURNS bytea AS 'MODULE_PATHNAME', 'pg_hmac' LANGUAGE C IMMUTABLE STRICT; -CREATE OR REPLACE FUNCTION hmac_exists(text) -RETURNS bool -AS 'MODULE_PATHNAME', 'pg_hmac_exists' -LANGUAGE C IMMUTABLE STRICT; - CREATE OR REPLACE FUNCTION crypt(text, text) RETURNS text AS 'MODULE_PATHNAME', 'pg_crypt' @@ -66,11 +56,6 @@ RETURNS bytea AS 'MODULE_PATHNAME', 'pg_decrypt_iv' LANGUAGE C IMMUTABLE STRICT; -CREATE OR REPLACE FUNCTION cipher_exists(text) -RETURNS bool -AS 'MODULE_PATHNAME', 'pg_cipher_exists' -LANGUAGE C IMMUTABLE STRICT; - CREATE OR REPLACE FUNCTION gen_random_bytes(int4) RETURNS bytea AS 'MODULE_PATHNAME', 'pg_random_bytes' diff --git a/contrib/pgcrypto/uninstall_pgcrypto.sql b/contrib/pgcrypto/uninstall_pgcrypto.sql index 56103f09db17b9ea5144406ed88248149bc94d44..e5675943b3722372e21f970138b150dbcb0d55a8 100644 --- a/contrib/pgcrypto/uninstall_pgcrypto.sql +++ b/contrib/pgcrypto/uninstall_pgcrypto.sql @@ -3,11 +3,9 @@ SET search_path = public; DROP FUNCTION digest(text, text); DROP FUNCTION digest(bytea, text); -DROP FUNCTION digest_exists(text); DROP FUNCTION hmac(text, text, text); DROP FUNCTION hmac(bytea, bytea, text); -DROP FUNCTION hmac_exists(text); DROP FUNCTION crypt(text, text); DROP FUNCTION gen_salt(text); @@ -17,7 +15,7 @@ DROP FUNCTION encrypt(bytea, bytea, text); DROP FUNCTION decrypt(bytea, bytea, text); DROP FUNCTION encrypt_iv(bytea, bytea, bytea, text); DROP FUNCTION decrypt_iv(bytea, bytea, bytea, text); -DROP FUNCTION cipher_exists(text); + DROP FUNCTION gen_random_bytes(int4); DROP FUNCTION pgp_sym_encrypt(text, text);