postgresql/contrib/chkpass/chkpass.sql
Tom Lane bf56f0759b Make OIDs optional, per discussions in pghackers. WITH OIDS is still the
default, but OIDS are removed from many system catalogs that don't need them.
Some interesting side effects: TOAST pointers are 20 bytes not 32 now;
pg_description has a three-column key instead of one.

Bugs fixed in passing: BINARY cursors work again; pg_class.relhaspkey
has some usefulness; pg_dump dumps comments on indexes, rules, and
triggers in a valid order.

initdb forced.
2001-08-10 18:57:42 +00:00

81 lines
1.6 KiB
SQL

--
-- PostgreSQL code for CHKPASS.
-- Written by D'Arcy J.M. Cain
-- darcy@druid.net
-- http://www.druid.net/darcy/
--
-- $Header: /cvsroot/pgsql/contrib/chkpass/Attic/chkpass.sql,v 1.2 2001/08/10 18:57:32 tgl Exp $
-- best viewed with tabs set to 4
-- %%PGDIR%% changed to your local directory where modules is
--
load '%%PGDIR%%/modules/chkpass.so';
--
-- Input and output functions and the type itself:
--
create function chkpass_in(opaque)
returns opaque
as '%%PGDIR%%/modules/chkpass.so'
language 'c';
create function chkpass_out(opaque)
returns opaque
as '%%PGDIR%%/modules/chkpass.so'
language 'c';
create type chkpass (
internallength = 16,
externallength = 13,
input = chkpass_in,
output = chkpass_out
);
create function raw(chkpass)
returns text
as '%%PGDIR%%/modules/chkpass.so', 'chkpass_rout'
language 'c';
--
-- The various boolean tests:
--
create function eq(chkpass, text)
returns bool
as '%%PGDIR%%/modules/chkpass.so', 'chkpass_eq'
language 'c';
create function ne(chkpass, text)
returns bool
as '%%PGDIR%%/modules/chkpass.so', 'chkpass_ne'
language 'c';
--
-- Now the operators. Note how some of the parameters to some
-- of the 'create operator' commands are commented out. This
-- is because they reference as yet undefined operators, and
-- will be implicitly defined when those are, further down.
--
create operator = (
leftarg = chkpass,
rightarg = text,
commutator = =,
-- negator = <>,
procedure = eq
);
create operator <> (
leftarg = chkpass,
rightarg = text,
negator = =,
procedure = ne
);
COMMENT ON TYPE chkpass IS 'password type with checks';
--
-- eof
--