Hi,

On Sat, Apr 16, 2011 at 01:10:31AM +0200, Rafał Malinowski wrote:
> Prosta łatka dodająca wsparcie dla pakietu GG_USERLIST100_VERSION=0x5c.
> Mam nadzieję, że niczego nie przegapiłem.

> Index: include/libgadu.h.in
> ===================================================================
> --- include/libgadu.h.in      (wersja 1087)
> +++ include/libgadu.h.in      (kopia robocza)
> @@ -2182,6 +2192,12 @@
>  #define GG_DCC7_TIMEOUT_FILE_ACK 300 /* 5 minut */
>  #define GG_DCC7_TIMEOUT_VOICE_ACK 300        /* 5 minut */
>  
> +#define GG_USERLIST100_VERSION 0x5c
> +
> +struct gg_userlist100_version {
> +     uint32_t version;
> +} GG_PACKED;
> +
>  #ifdef __cplusplus
>  }
>  #ifdef _WIN32

Ten kawałek do protocol.h

> Index: src/handlers.c
> ===================================================================
> --- src/handlers.c    (wersja 1087)
> +++ src/handlers.c    (kopia robocza)
> @@ -1695,6 +1695,36 @@
>  }
>  
>  /**
> + * \internal Obsługuje pakiet GG_USERLIST100_VERSION.
> + *
> + * Patrz gg_packet_handler_t
> + */
> +static int gg_session_handle_userlist_100_version(struct gg_session *gs, 
> uint32_t type, const char *ptr, size_t len, struct gg_event *ge)
> +{
> +     struct gg_userlist100_version *version = (struct 
> gg_userlist100_version*) ptr;
> +     int res = 0;

Ta zmienna jest nie używana?

> +     gg_debug_session(gs, GG_DEBUG_MISC, "// gg_watch_fd_connected() 
> received userlist 100 version\n");
> +
> +     int version_number = gg_fix32(version->version);

Zmienne w C deklarujemy na początku bloku ;)

> +     if (version_number > 0xffff) {
> +             gg_debug_session(gs, GG_DEBUG_MISC, "// 
> gg_session_userlist_100_version() malformed packet (1)\n");
> +             goto malformed;
> +     }

Jest jakiś powód że ograniczasz wersje do 0xffff? Tak to robi oryginalny 
klient? 

Pozdr.
_______________________________________________
libgadu-devel mailing list
[email protected]
http://lists.ziew.org/mailman/listinfo/libgadu-devel

Reply via email to