annotate src/sha.h @ 7431:643cbc9a6035

[gaim-migrate @ 8036] This is good enough for CVS. This is new logging. It centers around the highly modular "GaimLogLogger," which controls how to write the log. Currently I only have the plain text logger. I wrote the beginning of an XML logger, but decided I didn't think it was that great an idea. Plugins can implement loggers themselves, so you can have, like, an SQL logger or something. The default logger writes to a file unique to the conversation, and they're saved on disk in a heirarchical fashion: ~/.gaim/logs/aim/seanegn/robflynn-date.log would be a conversation I had with Rob on date. What doesn't work: System logging The search button in the log viewer. Oh, chats probably don't log either, I didn't test. You can only log in plain text right now. Obviously, it's not done yet. But you can play around with it, and give it some love. I'll get back to it tomorrow after school, maybe. committer: Tailor Script <tailor@pidgin.im>
author Sean Egan <seanegan@gmail.com>
date Wed, 05 Nov 2003 06:15:49 +0000
parents 0f6673c1ae38
children 00138e366ef8
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
6987
0f6673c1ae38 [gaim-migrate @ 7543]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
1 #if (SIZEOF_INT == 4)
0f6673c1ae38 [gaim-migrate @ 7543]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
2 typedef unsigned int uint32;
0f6673c1ae38 [gaim-migrate @ 7543]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
3 #elif (SIZEOF_SHORT == 4)
0f6673c1ae38 [gaim-migrate @ 7543]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
4 typedef unsigned short uint32;
0f6673c1ae38 [gaim-migrate @ 7543]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
5 #else
0f6673c1ae38 [gaim-migrate @ 7543]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
6 typedef unsigned int uint32;
0f6673c1ae38 [gaim-migrate @ 7543]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
7 #endif /* HAVEUINT32 */
0f6673c1ae38 [gaim-migrate @ 7543]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
8
0f6673c1ae38 [gaim-migrate @ 7543]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
9 int strprintsha(char *dest, int *hashval);
0f6673c1ae38 [gaim-migrate @ 7543]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
10
0f6673c1ae38 [gaim-migrate @ 7543]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
11 typedef struct {
0f6673c1ae38 [gaim-migrate @ 7543]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
12 unsigned long H[5];
0f6673c1ae38 [gaim-migrate @ 7543]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
13 unsigned long W[80];
0f6673c1ae38 [gaim-migrate @ 7543]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
14 int lenW;
0f6673c1ae38 [gaim-migrate @ 7543]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
15 unsigned long sizeHi,sizeLo;
0f6673c1ae38 [gaim-migrate @ 7543]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
16 } SHA_CTX;
0f6673c1ae38 [gaim-migrate @ 7543]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
17
0f6673c1ae38 [gaim-migrate @ 7543]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
18 void shaInit(SHA_CTX *ctx);
0f6673c1ae38 [gaim-migrate @ 7543]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
19 void shaUpdate(SHA_CTX *ctx, unsigned char *dataIn, int len);
0f6673c1ae38 [gaim-migrate @ 7543]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
20 void shaFinal(SHA_CTX *ctx, unsigned char hashout[20]);
0f6673c1ae38 [gaim-migrate @ 7543]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
21 void shaBlock(unsigned char *dataIn, int len, unsigned char hashout[20]);
0f6673c1ae38 [gaim-migrate @ 7543]
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
22