annotate src/protocols/yahoo/yahoo_auth.h @ 10470:eaa9552a5e0f

[gaim-migrate @ 11752] Fix sf patch #1094564, from Evan Schoenberg Basically our ft API allows the filename to be NULL, but there are times when we attempt to print the filename and don't check if it's NULL first. This apparently sometimes causes crashes (on win32, OSX, Solaris, and I guess any other OS that doesn't let you printf("%s", NULL); committer: Tailor Script <tailor@pidgin.im>
author Mark Doliner <mark@kingant.net>
date Tue, 04 Jan 2005 01:58:36 +0000
parents 0018b8118e77
children f4e58e94ced3
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
8350
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
1 /*
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
2 * yahoo_auth.h: Header for Yahoo Messenger authentication schemes. Eew.
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
3 *
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
4 * Copyright(c) 2003 Cerulean Studios
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
5 */
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
6
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
7
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
8 #ifndef _YAHOO_AUTH_H_
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
9 #define _YAHOO_AUTH_H_
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
10
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
11 #define NUM_TYPE_THREES 105
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
12 #define NUM_TYPE_FOURS 56
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
13 #define NUM_TYPE_FIVES 37
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
14
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
15 unsigned int yahoo_auth_finalCountdown(unsigned int challenge, int divisor, int inner_loop, int outer_loop);
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
16
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
17 /* We've defined the Yahoo authentication functions as having types 1-5; all take either 1 or 2 arguments.
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
18 */
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
19
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
20 typedef struct _auth {
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
21 int type;
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
22 int var1;
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
23 int var2;
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
24 } auth_function_t;
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
25
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
26 /* Type 3, 4 and 5 require lookups into ypager.exe's many static chunks of 256 bytes. Store them here.
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
27 */
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
28
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
29 struct buffer_t {
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
30 unsigned int buffer_start;
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
31 unsigned char buffer[257];
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
32 };
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
33
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
34
0018b8118e77 [gaim-migrate @ 9074]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
35 #endif /* _YAHOO_AUTH_H_ */