W dniu 3 września 2010 22:54 użytkownik Jakub Zawadzki <darkja...@darkjames.ath.cx> napisał:
Witam,

Nieoficjalnym standardem[1] szyfrowania wiadomości w gg jest wykorzystanie
kluczy RSA w kodowaniu WINDOWS-1250.

W ekg2 jak implementowaliśmy obsługę UTF-8 w gg, niechcący zmieniliśmy
również kodowanie szyfrowanej wiadomości ;)
Zastanawiam się czy w pozostałych projektach nastąpiła podobna zmiana
a jeśli nie to na ile chętni bylibyście ją przeprowadzić?

Jeśli chcemy (a miłoby było) zachować kompatylibność ze starymi klientami.
To w nagłówku sim_message_header jest pole 'flags' w których można by zachować
informacje o kodowaniu. Ktoś może wie które bity z niego są używane?

#v+
typedef struct {
    unsigned char init[8];
    uint16_t magic;             /* SIM_MAGIC_V1 0x2391 */
    uint8_t flags;
} sim_message_header;
#v-

[1] http://ekg.chmurka.net/docs/sim.txt ekg,ekg2,Kadu,PowerGG ktoś jeszcze?

Cześć,

Odnalazłem tę trochę starą wiadomość i stwierdzam, że Kadu jest bardzo zainteresowane obsługą UTF-8 w szyfrowaniu sim. Pole 'flags' jest przez ekg, ekg2 i Kadu (tyle sprawdziłem) w ogóle nieużywane, ale memset zapewnia jego wartość równą 0. Korzystając z wolnego czasu zrobiłem wstępną implementację w Kadu[1] i z moich testów wynika, że działa to całkiem sprawnie i zachowuje kompatybilność ze starymi wersjami. Moja propozycja flag jest taka:

    /* Flaga oznaczająca, że potrafimy przyjąć wiadomość UTF-8.
       Ustawiamy zawsze. */
    #define SIM_FLAG_SUPPORT_UTF8 0x01

    /* Flaga oznaczająca, że wiadomość, którą właśnie wysyłamy, jest
       zakodowana w UTF-8. Powinniśmy jej używać po otrzymaniu
       od rozmówcy wiadomości z flagą SIM_FLAG_SUPPORT_UTF8. */
    #define SIM_FLAG_UTF8_MESSAGE 0x02

Kadu zapamiętuje, czy dany rozmówca wspiera UTF-8 również pomiędzy uruchomieniami programu, ale nie jest to funkcja konieczna ani nawet szczególnie istotna.

Pozdrawiam,
Bartosz

[1] branch simlite-utf8, istotne commity:
http://gitorious.org/kadu/kadu/commit/18a1f5c
http://gitorious.org/kadu/kadu/commit/8c33c9a

_______________________________________________
libgadu-devel mailing list
libgadu-devel@lists.ziew.org
http://lists.ziew.org/mailman/listinfo/libgadu-devel

Reply via email to