CREATE FUNCTION auth_user(text, text) RETURNS bool AS ' DECLARE salt text; BEGIN SELECT INTO salt substring(passwd, 1, 2) FROM users WHERE usename = $1; IF NOT FOUND THEN RETURN false; END IF; PERFORM * FROM users WHERE usename = $1 AND passwd = crypt($2, salt); IF NOT FOUND THEN RETURN false; END IF; RETURN true; END; ' LANGUAGE PLPGSQL;