Re: WinCE/Pocket PC port for the C client library

Поиск
Список
Период
Сортировка
От Magnus Hagander
Тема Re: WinCE/Pocket PC port for the C client library
Дата
Msg-id 6BCB9D8A16AC4241919521715F4D8BCEA352A4@algol.sollentuna.se
обсуждение исходный текст
Ответ на WinCE/Pocket PC port for the C client library  ("Nuno Lucas" <ntlucas@gmail.com>)
Ответы Re: WinCE/Pocket PC port for the C client library  ("Nuno Lucas" <ntlucas@gmail.com>)
Список pgsql-ports
> Hello,
>
> I'm implementing a WinCE 4.x (Pocket PC 2003) application
> which needs to get data from a postgres database, so I
> "hacked" the 8.1.2 libpq source so I could get it working.
>
> Well, it seems to be working ok, but, as I don't know the
> code, have no idea if my hack is acceptable or induces other
> bugs I haven't seen yet.

# add_file "src/include/pg_config.h"
# add_file "src/include/pg_config_paths.h"

This part certainly isn't right :-) Those files are supposed to be
auto-generated, not put in the source.


As for:
-                if (getsockopt(conn->sock, SOL_SOCKET,
SO_ERROR,
-                               (char *)
&optval, &optlen) == -1)
+                int err = getsockopt(conn->sock,
SOL_SOCKET, SO_ERROR,
+
(char *) &optval, &optlen);
+#if defined(_WIN32_WCE)
+                /* This was "googled" from the curl
library source */
+                /* Always returns this error, bug in CE?
*/
+                if ( err == -1 && SOCK_ERRNO ==
WSAENOPROTOOPT )
+                    err=0;
+#endif
+                if ( err == -1 )


Does it actually *have* the option and fail to set it, or is the option
just not there? If it doesn't exist, you should just #ifdef out the
tryign to set the option, IMHO.


Apart from that it looks OK to me. There definitly needs to be some
documentation on how to build it, though...

//Magnus

В списке pgsql-ports по дате отправления:

Предыдущее
От: "Nuno Lucas"
Дата:
Сообщение: WinCE/Pocket PC port for the C client library
Следующее
От: "Nuno Lucas"
Дата:
Сообщение: Re: WinCE/Pocket PC port for the C client library