Обсуждение: Patch for incomplete libpq DLL .def file
I have ported another Python Postgres interface to Windows (PgSQL). It seems that not many people actually use libpq on Win32; I have found another bug. Some functions that are defined in libpq-fe.h aren't exported in the DLL version of the library. I have added them to src/interfaces/libpq/libpqdll.def. The new complete file is attached. Gerhard -- mail: gerhard <at> bigfoot <dot> de registered Linux user #64239 web: http://highqualdev.com public key at homepage public key fingerprint: DEC1 1D02 5743 1159 CD20 A4B6 7B22 6575 86AB 43C0 reduce(lambda x,y:x+y,map(lambda x:chr(ord(x)^42),tuple('zS^BED\nX_FOY\x0b')))LIBRARY LIBPQ DESCRIPTION "Postgres Client Access Library" EXPORTS PQconnectdb @ 1 PQsetdbLogin @ 2 PQconndefaults @ 3 PQfinish @ 4 PQreset @ 5 PQrequestCancel @ 6 PQdb @ 7 PQuser @ 8 PQpass @ 9 PQhost @ 10 PQport @ 11 PQtty @ 12 PQoptions @ 13 PQstatus @ 14 PQerrorMessage @ 15 PQsocket @ 16 PQbackendPID @ 17 PQtrace @ 18 PQuntrace @ 19 PQsetNoticeProcessor @ 20 PQexec @ 21 PQnotifies @ 22 PQsendQuery @ 23 PQgetResult @ 24 PQisBusy @ 25 PQconsumeInput @ 26 PQgetline @ 27 PQputline @ 28 PQgetlineAsync @ 29 PQputnbytes @ 30 PQendcopy @ 31 PQfn @ 32 PQresultStatus @ 33 PQntuples @ 34 PQnfields @ 35 PQbinaryTuples @ 36 PQfname @ 37 PQfnumber @ 38 PQftype @ 39 PQfsize @ 40 PQfmod @ 41 PQcmdStatus @ 42 PQoidStatus @ 43 PQcmdTuples @ 44 PQgetvalue @ 45 PQgetlength @ 46 PQgetisnull @ 47 PQclear @ 48 PQmakeEmptyPGresult @ 49 PQprint @ 50 PQdisplayTuples @ 51 PQprintTuples @ 52 lo_open @ 53 lo_close @ 54 lo_read @ 55 lo_write @ 56 lo_lseek @ 57 lo_creat @ 58 lo_tell @ 59 lo_unlink @ 60 lo_import @ 61 lo_export @ 62 pgresStatus @ 63 PQmblen @ 64 PQresultErrorMessage @ 65 PQresStatus @ 66 termPQExpBuffer @ 67 appendPQExpBufferChar @ 68 initPQExpBuffer @ 69 resetPQExpBuffer @ 70 PQoidValue @ 71 PQclientEncoding @ 72 PQenv2encoding @ 73 appendBinaryPQExpBuffer @ 74 appendPQExpBufferStr @ 75 destroyPQExpBuffer @ 76 createPQExpBuffer @ 77 PQconninfoFree @ 78 PQconnectPoll @ 79 PQconnectStart @ 80 PQflush @ 81 PQisnonblocking @ 82 PQresetPoll @ 83 PQresetStart @ 84 PQsetClientEncoding @ 85 PQsetnonblocking @ 86
Your patch has been added to the PostgreSQL unapplied patches list at:
http://candle.pha.pa.us/cgi-bin/pgpatches
I will try to apply it within the next 48 hours.
> I have ported another Python Postgres interface to Windows (PgSQL). It seems
> that not many people actually use libpq on Win32; I have found another bug. Some
> functions that are defined in libpq-fe.h aren't exported in the DLL version of
> the library. I have added them to src/interfaces/libpq/libpqdll.def. The new
> complete file is attached.
>
> Gerhard
> --
> mail: gerhard <at> bigfoot <dot> de registered Linux user #64239
> web: http://highqualdev.com public key at homepage
> public key fingerprint: DEC1 1D02 5743 1159 CD20 A4B6 7B22 6575 86AB 43C0
> reduce(lambda x,y:x+y,map(lambda x:chr(ord(x)^42),tuple('zS^BED\nX_FOY\x0b')))
> LIBRARY LIBPQ
> DESCRIPTION "Postgres Client Access Library"
> EXPORTS
> PQconnectdb @ 1
> PQsetdbLogin @ 2
> PQconndefaults @ 3
> PQfinish @ 4
> PQreset @ 5
> PQrequestCancel @ 6
> PQdb @ 7
> PQuser @ 8
> PQpass @ 9
> PQhost @ 10
> PQport @ 11
> PQtty @ 12
> PQoptions @ 13
> PQstatus @ 14
> PQerrorMessage @ 15
> PQsocket @ 16
> PQbackendPID @ 17
> PQtrace @ 18
> PQuntrace @ 19
> PQsetNoticeProcessor @ 20
> PQexec @ 21
> PQnotifies @ 22
> PQsendQuery @ 23
> PQgetResult @ 24
> PQisBusy @ 25
> PQconsumeInput @ 26
> PQgetline @ 27
> PQputline @ 28
> PQgetlineAsync @ 29
> PQputnbytes @ 30
> PQendcopy @ 31
> PQfn @ 32
> PQresultStatus @ 33
> PQntuples @ 34
> PQnfields @ 35
> PQbinaryTuples @ 36
> PQfname @ 37
> PQfnumber @ 38
> PQftype @ 39
> PQfsize @ 40
> PQfmod @ 41
> PQcmdStatus @ 42
> PQoidStatus @ 43
> PQcmdTuples @ 44
> PQgetvalue @ 45
> PQgetlength @ 46
> PQgetisnull @ 47
> PQclear @ 48
> PQmakeEmptyPGresult @ 49
> PQprint @ 50
> PQdisplayTuples @ 51
> PQprintTuples @ 52
> lo_open @ 53
> lo_close @ 54
> lo_read @ 55
> lo_write @ 56
> lo_lseek @ 57
> lo_creat @ 58
> lo_tell @ 59
> lo_unlink @ 60
> lo_import @ 61
> lo_export @ 62
> pgresStatus @ 63
> PQmblen @ 64
> PQresultErrorMessage @ 65
> PQresStatus @ 66
> termPQExpBuffer @ 67
> appendPQExpBufferChar @ 68
> initPQExpBuffer @ 69
> resetPQExpBuffer @ 70
> PQoidValue @ 71
> PQclientEncoding @ 72
> PQenv2encoding @ 73
> appendBinaryPQExpBuffer @ 74
> appendPQExpBufferStr @ 75
> destroyPQExpBuffer @ 76
> createPQExpBuffer @ 77
> PQconninfoFree @ 78
> PQconnectPoll @ 79
> PQconnectStart @ 80
> PQflush @ 81
> PQisnonblocking @ 82
> PQresetPoll @ 83
> PQresetStart @ 84
> PQsetClientEncoding @ 85
> PQsetnonblocking @ 86
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 5: Have you checked our extensive FAQ?
>
> http://www.postgresql.org/users-lounge/docs/faq.html
--
Bruce Momjian | http://candle.pha.pa.us
pgman@candle.pha.pa.us | (610) 853-3000
+ If your life is a hard drive, | 830 Blythe Avenue
+ Christ can be your backup. | Drexel Hill, Pennsylvania 19026
Patch applied. Thanks. > I have ported another Python Postgres interface to Windows (PgSQL). It seems > that not many people actually use libpq on Win32; I have found another bug. Some > functions that are defined in libpq-fe.h aren't exported in the DLL version of > the library. I have added them to src/interfaces/libpq/libpqdll.def. The new > complete file is attached. > > Gerhard > -- > mail: gerhard <at> bigfoot <dot> de registered Linux user #64239 > web: http://highqualdev.com public key at homepage > public key fingerprint: DEC1 1D02 5743 1159 CD20 A4B6 7B22 6575 86AB 43C0 > reduce(lambda x,y:x+y,map(lambda x:chr(ord(x)^42),tuple('zS^BED\nX_FOY\x0b'))) > LIBRARY LIBPQ > DESCRIPTION "Postgres Client Access Library" > EXPORTS > PQconnectdb @ 1 > PQsetdbLogin @ 2 > PQconndefaults @ 3 > PQfinish @ 4 > PQreset @ 5 > PQrequestCancel @ 6 > PQdb @ 7 > PQuser @ 8 > PQpass @ 9 > PQhost @ 10 > PQport @ 11 > PQtty @ 12 > PQoptions @ 13 > PQstatus @ 14 > PQerrorMessage @ 15 > PQsocket @ 16 > PQbackendPID @ 17 > PQtrace @ 18 > PQuntrace @ 19 > PQsetNoticeProcessor @ 20 > PQexec @ 21 > PQnotifies @ 22 > PQsendQuery @ 23 > PQgetResult @ 24 > PQisBusy @ 25 > PQconsumeInput @ 26 > PQgetline @ 27 > PQputline @ 28 > PQgetlineAsync @ 29 > PQputnbytes @ 30 > PQendcopy @ 31 > PQfn @ 32 > PQresultStatus @ 33 > PQntuples @ 34 > PQnfields @ 35 > PQbinaryTuples @ 36 > PQfname @ 37 > PQfnumber @ 38 > PQftype @ 39 > PQfsize @ 40 > PQfmod @ 41 > PQcmdStatus @ 42 > PQoidStatus @ 43 > PQcmdTuples @ 44 > PQgetvalue @ 45 > PQgetlength @ 46 > PQgetisnull @ 47 > PQclear @ 48 > PQmakeEmptyPGresult @ 49 > PQprint @ 50 > PQdisplayTuples @ 51 > PQprintTuples @ 52 > lo_open @ 53 > lo_close @ 54 > lo_read @ 55 > lo_write @ 56 > lo_lseek @ 57 > lo_creat @ 58 > lo_tell @ 59 > lo_unlink @ 60 > lo_import @ 61 > lo_export @ 62 > pgresStatus @ 63 > PQmblen @ 64 > PQresultErrorMessage @ 65 > PQresStatus @ 66 > termPQExpBuffer @ 67 > appendPQExpBufferChar @ 68 > initPQExpBuffer @ 69 > resetPQExpBuffer @ 70 > PQoidValue @ 71 > PQclientEncoding @ 72 > PQenv2encoding @ 73 > appendBinaryPQExpBuffer @ 74 > appendPQExpBufferStr @ 75 > destroyPQExpBuffer @ 76 > createPQExpBuffer @ 77 > PQconninfoFree @ 78 > PQconnectPoll @ 79 > PQconnectStart @ 80 > PQflush @ 81 > PQisnonblocking @ 82 > PQresetPoll @ 83 > PQresetStart @ 84 > PQsetClientEncoding @ 85 > PQsetnonblocking @ 86 > > > ---------------------------(end of broadcast)--------------------------- > TIP 5: Have you checked our extensive FAQ? > > http://www.postgresql.org/users-lounge/docs/faq.html -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 853-3000 + If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania 19026