PostgresCung cấp đường dẫn kèo bóng đá c1 Giao diện để gửi các cuộc gọi chức năng đến phần phụ trợ. Đây là một cái bẫy vào hệ thống bên trong và có thể là một lỗ bảo mật tiềm năng. Hầu hết Người dùng sẽ không cần tính năng này.
PQFNYêu cầu thực hiện A chức năng phụ trợ thông qua giao diện đường dẫn kèo bóng đá c1.
pgresult* pqfn (pgconn* Conn, kèo bóng đá c1 fnid, kèo bóng đá c1 *result_buf, kèo bóng đá c1 *result_len, kèo bóng đá c1 result_is_int, Pqargblock *args, kèo bóng đá c1 nargs);Đối số FNID là định danh đối tượng của hàm thành được thực hiện. result_buf là bộ đệm để đặt trở lại giá trị. Người gọi phải phân bổ đủ kèo bóng đá c1 gian để lưu trữ Giá trị trả về (kèo bóng đá c1 có kiểm tra!). Độ dài kết quả thực tế sẽ là được trả về trong số nguyên được trỏ đến bởi result_len. Nếu một byte 4 Kết quả số nguyên được dự kiến, đặt result_is_int thành 1; nếu kèo bóng đá c1 thì đặt nó thành 0. (Cài đặt result_is_int thành 1 nói với libpq để trao đổi byte giá trị nếu cần thiết, để nó được phân phối dưới dạng giá trị int thích hợp cho máy khách. Khi results_is_int là 0, chuỗi byte được gửi bởi phần phụ trợ được trả về kèo bóng đá c1 sửa đổi.) Args và NARG chỉ định các đối số được chuyển đến hàm.
Typedef Struct kèo bóng đá c1 len; kèo bóng đá c1 isint; Liên minh kèo bóng đá c1 *ptr; kèo bóng đá c1 Integer; u; Pqargblock;PQFN luôn trả về một pgresult hợp lệ*. Kết quả nên được kiểm tra trước khi kết quả được sử dụng. Người gọi là chịu trách nhiệm giải phóng pgresult bằng pqclear khi nó kèo bóng đá c1 lâu hơn cần thiết.