annotate src/protocols/oscar/util.c @ 13234:f2431a7e33aa

[gaim-migrate @ 15600] Massive oscar shuffling. No change in functionality. I renamed each of the files that contains stuff for a SNAC family. I started splitting the file transfer/direct connect stuff into peer.c and peer.h. I stopped using fu8_t, fu16_t and fu32_t and switched to guint8, guint16 and guint32 instead. I changed the SNAC family and subtype defines so they are more meaningful. Added LGPL copyright header to each file. Added myself to the AUTHORS file. committer: Tailor Script <tailor@pidgin.im>
author Mark Doliner <mark@kingant.net>
date Sat, 11 Feb 2006 21:45:18 +0000
parents bdb8d7beb5a7
children f260d319bbbc
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
13234
f2431a7e33aa [gaim-migrate @ 15600]
Mark Doliner <mark@kingant.net>
parents: 13168
diff changeset
1 /*
f2431a7e33aa [gaim-migrate @ 15600]
Mark Doliner <mark@kingant.net>
parents: 13168
diff changeset
2 * Gaim's oscar protocol plugin
f2431a7e33aa [gaim-migrate @ 15600]
Mark Doliner <mark@kingant.net>
parents: 13168
diff changeset
3 * This file is the legal property of its developers.
f2431a7e33aa [gaim-migrate @ 15600]
Mark Doliner <mark@kingant.net>
parents: 13168
diff changeset
4 * Please see the AUTHORS file distributed alongside this file.
f2431a7e33aa [gaim-migrate @ 15600]
Mark Doliner <mark@kingant.net>
parents: 13168
diff changeset
5 *
f2431a7e33aa [gaim-migrate @ 15600]
Mark Doliner <mark@kingant.net>
parents: 13168
diff changeset
6 * This library is free software; you can redistribute it and/or
f2431a7e33aa [gaim-migrate @ 15600]
Mark Doliner <mark@kingant.net>
parents: 13168
diff changeset
7 * modify it under the terms of the GNU Lesser General Public
f2431a7e33aa [gaim-migrate @ 15600]
Mark Doliner <mark@kingant.net>
parents: 13168
diff changeset
8 * License as published by the Free Software Foundation; either
f2431a7e33aa [gaim-migrate @ 15600]
Mark Doliner <mark@kingant.net>
parents: 13168
diff changeset
9 * version 2 of the License, or (at your option) any later version.
f2431a7e33aa [gaim-migrate @ 15600]
Mark Doliner <mark@kingant.net>
parents: 13168
diff changeset
10 *
f2431a7e33aa [gaim-migrate @ 15600]
Mark Doliner <mark@kingant.net>
parents: 13168
diff changeset
11 * This library is distributed in the hope that it will be useful,
f2431a7e33aa [gaim-migrate @ 15600]
Mark Doliner <mark@kingant.net>
parents: 13168
diff changeset
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
f2431a7e33aa [gaim-migrate @ 15600]
Mark Doliner <mark@kingant.net>
parents: 13168
diff changeset
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
f2431a7e33aa [gaim-migrate @ 15600]
Mark Doliner <mark@kingant.net>
parents: 13168
diff changeset
14 * Lesser General Public License for more details.
f2431a7e33aa [gaim-migrate @ 15600]
Mark Doliner <mark@kingant.net>
parents: 13168
diff changeset
15 *
f2431a7e33aa [gaim-migrate @ 15600]
Mark Doliner <mark@kingant.net>
parents: 13168
diff changeset
16 * You should have received a copy of the GNU Lesser General Public
f2431a7e33aa [gaim-migrate @ 15600]
Mark Doliner <mark@kingant.net>
parents: 13168
diff changeset
17 * License along with this library; if not, write to the Free Software
f2431a7e33aa [gaim-migrate @ 15600]
Mark Doliner <mark@kingant.net>
parents: 13168
diff changeset
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
f2431a7e33aa [gaim-migrate @ 15600]
Mark Doliner <mark@kingant.net>
parents: 13168
diff changeset
19 */
f2431a7e33aa [gaim-migrate @ 15600]
Mark Doliner <mark@kingant.net>
parents: 13168
diff changeset
20
2086
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
21 /*
4246
2a2d6d21f1d7 [gaim-migrate @ 4496]
Mark Doliner <mark@kingant.net>
parents: 3952
diff changeset
22 * A little bit of this
2a2d6d21f1d7 [gaim-migrate @ 4496]
Mark Doliner <mark@kingant.net>
parents: 3952
diff changeset
23 * A little bit of that
2a2d6d21f1d7 [gaim-migrate @ 4496]
Mark Doliner <mark@kingant.net>
parents: 3952
diff changeset
24 * It started with a kiss
2a2d6d21f1d7 [gaim-migrate @ 4496]
Mark Doliner <mark@kingant.net>
parents: 3952
diff changeset
25 * Now we're up to bat
2086
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
26 */
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
27
13234
f2431a7e33aa [gaim-migrate @ 15600]
Mark Doliner <mark@kingant.net>
parents: 13168
diff changeset
28 #include "oscar.h"
2086
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
29 #include <ctype.h>
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
30
4246
2a2d6d21f1d7 [gaim-migrate @ 4496]
Mark Doliner <mark@kingant.net>
parents: 3952
diff changeset
31 #ifdef _WIN32
2a2d6d21f1d7 [gaim-migrate @ 4496]
Mark Doliner <mark@kingant.net>
parents: 3952
diff changeset
32 #include "win32dep.h"
2a2d6d21f1d7 [gaim-migrate @ 4496]
Mark Doliner <mark@kingant.net>
parents: 3952
diff changeset
33 #endif
2a2d6d21f1d7 [gaim-migrate @ 4496]
Mark Doliner <mark@kingant.net>
parents: 3952
diff changeset
34
5927
04dc7fe68889 [gaim-migrate @ 6367]
Mark Doliner <mark@kingant.net>
parents: 5800
diff changeset
35 faim_export int aimutil_putstr(char *dest, const char *src, int len)
2086
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
36 {
2246
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
37 memcpy(dest, src, len);
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
38 return len;
2086
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
39 }
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
40
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
41 /*
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
42 * Tokenizing functions. Used to portably replace strtok/sep.
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
43 * -- DMP.
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
44 *
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
45 */
6323
5d7063e137da [gaim-migrate @ 6822]
Mark Doliner <mark@kingant.net>
parents: 6322
diff changeset
46 faim_export int aimutil_tokslen(char *toSearch, int theindex, char dl)
2086
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
47 {
2246
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
48 int curCount = 1;
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
49 char *next;
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
50 char *last;
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
51 int toReturn;
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
52
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
53 last = toSearch;
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
54 next = strchr(toSearch, dl);
2086
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
55
6323
5d7063e137da [gaim-migrate @ 6822]
Mark Doliner <mark@kingant.net>
parents: 6322
diff changeset
56 while(curCount < theindex && next != NULL) {
2246
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
57 curCount++;
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
58 last = next + 1;
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
59 next = strchr(last, dl);
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
60 }
2086
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
61
6323
5d7063e137da [gaim-migrate @ 6822]
Mark Doliner <mark@kingant.net>
parents: 6322
diff changeset
62 if ((curCount < theindex) || (next == NULL))
2246
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
63 toReturn = strlen(toSearch) - (curCount - 1);
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
64 else
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
65 toReturn = next - toSearch - (curCount - 1);
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
66
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
67 return toReturn;
2086
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
68 }
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
69
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
70 faim_export int aimutil_itemcnt(char *toSearch, char dl)
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
71 {
2246
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
72 int curCount;
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
73 char *next;
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
74
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
75 curCount = 1;
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
76
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
77 next = strchr(toSearch, dl);
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
78
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
79 while(next != NULL) {
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
80 curCount++;
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
81 next = strchr(next + 1, dl);
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
82 }
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
83
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
84 return curCount;
2086
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
85 }
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
86
6323
5d7063e137da [gaim-migrate @ 6822]
Mark Doliner <mark@kingant.net>
parents: 6322
diff changeset
87 faim_export char *aimutil_itemindex(char *toSearch, int theindex, char dl)
2086
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
88 {
2246
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
89 int curCount;
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
90 char *next;
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
91 char *last;
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
92 char *toReturn;
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
93
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
94 curCount = 0;
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
95
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
96 last = toSearch;
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
97 next = strchr(toSearch, dl);
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
98
6323
5d7063e137da [gaim-migrate @ 6822]
Mark Doliner <mark@kingant.net>
parents: 6322
diff changeset
99 while (curCount < theindex && next != NULL) {
2246
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
100 curCount++;
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
101 last = next + 1;
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
102 next = strchr(last, dl);
2086
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
103 }
2246
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
104
6323
5d7063e137da [gaim-migrate @ 6822]
Mark Doliner <mark@kingant.net>
parents: 6322
diff changeset
105 if (curCount < theindex) {
2246
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
106 toReturn = malloc(sizeof(char));
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
107 *toReturn = '\0';
2086
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
108 }
2246
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
109 next = strchr(last, dl);
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
110
6323
5d7063e137da [gaim-migrate @ 6822]
Mark Doliner <mark@kingant.net>
parents: 6322
diff changeset
111 if (curCount < theindex) {
2246
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
112 toReturn = malloc(sizeof(char));
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
113 *toReturn = '\0';
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
114 } else {
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
115 if (next == NULL) {
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
116 toReturn = malloc((strlen(last) + 1) * sizeof(char));
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
117 strcpy(toReturn, last);
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
118 } else {
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
119 toReturn = malloc((next - last + 1) * sizeof(char));
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
120 memcpy(toReturn, last, (next - last));
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
121 toReturn[next - last] = '\0';
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
122 }
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
123 }
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
124 return toReturn;
2086
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
125 }
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
126
4617
858979ab3867 [gaim-migrate @ 4908]
Mark Doliner <mark@kingant.net>
parents: 4246
diff changeset
127 /**
858979ab3867 [gaim-migrate @ 4908]
Mark Doliner <mark@kingant.net>
parents: 4246
diff changeset
128 * Calculate the checksum of a given icon.
858979ab3867 [gaim-migrate @ 4908]
Mark Doliner <mark@kingant.net>
parents: 4246
diff changeset
129 *
858979ab3867 [gaim-migrate @ 4908]
Mark Doliner <mark@kingant.net>
parents: 4246
diff changeset
130 */
13234
f2431a7e33aa [gaim-migrate @ 15600]
Mark Doliner <mark@kingant.net>
parents: 13168
diff changeset
131 faim_export guint16 aimutil_iconsum(const guint8 *buf, int buflen)
4617
858979ab3867 [gaim-migrate @ 4908]
Mark Doliner <mark@kingant.net>
parents: 4246
diff changeset
132 {
13234
f2431a7e33aa [gaim-migrate @ 15600]
Mark Doliner <mark@kingant.net>
parents: 13168
diff changeset
133 guint32 sum;
4617
858979ab3867 [gaim-migrate @ 4908]
Mark Doliner <mark@kingant.net>
parents: 4246
diff changeset
134 int i;
858979ab3867 [gaim-migrate @ 4908]
Mark Doliner <mark@kingant.net>
parents: 4246
diff changeset
135
858979ab3867 [gaim-migrate @ 4908]
Mark Doliner <mark@kingant.net>
parents: 4246
diff changeset
136 for (i=0, sum=0; i+1<buflen; i+=2)
858979ab3867 [gaim-migrate @ 4908]
Mark Doliner <mark@kingant.net>
parents: 4246
diff changeset
137 sum += (buf[i+1] << 8) + buf[i];
858979ab3867 [gaim-migrate @ 4908]
Mark Doliner <mark@kingant.net>
parents: 4246
diff changeset
138 if (i < buflen)
858979ab3867 [gaim-migrate @ 4908]
Mark Doliner <mark@kingant.net>
parents: 4246
diff changeset
139 sum += buf[i];
858979ab3867 [gaim-migrate @ 4908]
Mark Doliner <mark@kingant.net>
parents: 4246
diff changeset
140 sum = ((sum & 0xffff0000) >> 16) + (sum & 0x0000ffff);
858979ab3867 [gaim-migrate @ 4908]
Mark Doliner <mark@kingant.net>
parents: 4246
diff changeset
141
858979ab3867 [gaim-migrate @ 4908]
Mark Doliner <mark@kingant.net>
parents: 4246
diff changeset
142 return sum;
858979ab3867 [gaim-migrate @ 4908]
Mark Doliner <mark@kingant.net>
parents: 4246
diff changeset
143 }
858979ab3867 [gaim-migrate @ 4908]
Mark Doliner <mark@kingant.net>
parents: 4246
diff changeset
144
8092
697221d5d0ff [gaim-migrate @ 8791]
Mark Doliner <mark@kingant.net>
parents: 6323
diff changeset
145 /**
8972
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
146 * Check if the given screen name is a valid AIM screen name.
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
147 * Example: BobDole
9681
6fd2bd5446e4 [gaim-migrate @ 10533]
Mark Doliner <mark@kingant.net>
parents: 8982
diff changeset
148 * Example: Henry_Ford@mac.com
8972
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
149 *
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
150 * @return 1 if the screen name is valid, 0 if not.
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
151 */
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
152 static int aim_snvalid_aim(const char *sn)
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
153 {
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
154 int i;
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
155
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
156 for (i = 0; sn[i] != '\0'; i++) {
9681
6fd2bd5446e4 [gaim-migrate @ 10533]
Mark Doliner <mark@kingant.net>
parents: 8982
diff changeset
157 if (!isalnum(sn[i]) && (sn[i] != ' ') &&
6fd2bd5446e4 [gaim-migrate @ 10533]
Mark Doliner <mark@kingant.net>
parents: 8982
diff changeset
158 (sn[i] != '@') && (sn[i] != '.') &&
6fd2bd5446e4 [gaim-migrate @ 10533]
Mark Doliner <mark@kingant.net>
parents: 8982
diff changeset
159 (sn[i] != '_') && (sn[i] != '-'))
8972
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
160 return 0;
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
161 }
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
162
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
163 return 1;
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
164 }
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
165
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
166 /**
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
167 * Check if the given screen name is a valid ICQ screen name.
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
168 * Example: 1234567
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
169 *
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
170 * @return 1 if the screen name is valid, 0 if not.
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
171 */
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
172 static int aim_snvalid_icq(const char *sn)
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
173 {
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
174 int i;
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
175
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
176 for (i = 0; sn[i] != '\0'; i++) {
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
177 if (!isdigit(sn[i]))
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
178 return 0;
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
179 }
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
180
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
181 return 1;
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
182 }
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
183
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
184 /**
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
185 * Check if the given screen name is a valid SMS screen name.
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
186 * Example: +19195551234
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
187 *
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
188 * @return 1 if the screen name is valid, 0 if not.
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
189 */
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
190 static int aim_snvalid_sms(const char *sn)
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
191 {
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
192 int i;
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
193
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
194 if (sn[0] != '+')
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
195 return 0;
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
196
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
197 for (i = 1; sn[i] != '\0'; i++) {
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
198 if (!isdigit(sn[i]))
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
199 return 0;
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
200 }
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
201
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
202 return 1;
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
203 }
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
204
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
205 /**
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
206 * Check if the given screen name is a valid oscar screen name.
8092
697221d5d0ff [gaim-migrate @ 8791]
Mark Doliner <mark@kingant.net>
parents: 6323
diff changeset
207 *
697221d5d0ff [gaim-migrate @ 8791]
Mark Doliner <mark@kingant.net>
parents: 6323
diff changeset
208 * @return 1 if the screen name is valid, 0 if not.
697221d5d0ff [gaim-migrate @ 8791]
Mark Doliner <mark@kingant.net>
parents: 6323
diff changeset
209 */
697221d5d0ff [gaim-migrate @ 8791]
Mark Doliner <mark@kingant.net>
parents: 6323
diff changeset
210 faim_export int aim_snvalid(const char *sn)
697221d5d0ff [gaim-migrate @ 8791]
Mark Doliner <mark@kingant.net>
parents: 6323
diff changeset
211 {
8972
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
212 if ((sn == NULL) || (*sn == '\0'))
8092
697221d5d0ff [gaim-migrate @ 8791]
Mark Doliner <mark@kingant.net>
parents: 6323
diff changeset
213 return 0;
697221d5d0ff [gaim-migrate @ 8791]
Mark Doliner <mark@kingant.net>
parents: 6323
diff changeset
214
8972
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
215 if (isalpha(sn[0]))
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
216 return aim_snvalid_aim(sn);
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
217 else if (isdigit(sn[0]))
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
218 return aim_snvalid_icq(sn);
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
219 else if (sn[0] == '+')
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
220 return aim_snvalid_sms(sn);
8092
697221d5d0ff [gaim-migrate @ 8791]
Mark Doliner <mark@kingant.net>
parents: 6323
diff changeset
221
8972
f09801513729 [gaim-migrate @ 9746]
Mark Doliner <mark@kingant.net>
parents: 8885
diff changeset
222 return 0;
8092
697221d5d0ff [gaim-migrate @ 8791]
Mark Doliner <mark@kingant.net>
parents: 6323
diff changeset
223 }
697221d5d0ff [gaim-migrate @ 8791]
Mark Doliner <mark@kingant.net>
parents: 6323
diff changeset
224
9975
c66345b33b88 [gaim-migrate @ 10886]
Mark Doliner <mark@kingant.net>
parents: 9681
diff changeset
225 /**
c66345b33b88 [gaim-migrate @ 10886]
Mark Doliner <mark@kingant.net>
parents: 9681
diff changeset
226 * Determine if a given screen name is an ICQ screen name
c66345b33b88 [gaim-migrate @ 10886]
Mark Doliner <mark@kingant.net>
parents: 9681
diff changeset
227 * (i.e. it begins with a number).
c66345b33b88 [gaim-migrate @ 10886]
Mark Doliner <mark@kingant.net>
parents: 9681
diff changeset
228 *
c66345b33b88 [gaim-migrate @ 10886]
Mark Doliner <mark@kingant.net>
parents: 9681
diff changeset
229 * @sn A valid AIM or ICQ screen name.
c66345b33b88 [gaim-migrate @ 10886]
Mark Doliner <mark@kingant.net>
parents: 9681
diff changeset
230 * @return 1 if the screen name is an ICQ screen name. Otherwise 0
c66345b33b88 [gaim-migrate @ 10886]
Mark Doliner <mark@kingant.net>
parents: 9681
diff changeset
231 * is returned.
c66345b33b88 [gaim-migrate @ 10886]
Mark Doliner <mark@kingant.net>
parents: 9681
diff changeset
232 */
c66345b33b88 [gaim-migrate @ 10886]
Mark Doliner <mark@kingant.net>
parents: 9681
diff changeset
233 faim_export int aim_sn_is_icq(const char *sn)
c66345b33b88 [gaim-migrate @ 10886]
Mark Doliner <mark@kingant.net>
parents: 9681
diff changeset
234 {
c66345b33b88 [gaim-migrate @ 10886]
Mark Doliner <mark@kingant.net>
parents: 9681
diff changeset
235 if (isalpha(sn[0]))
c66345b33b88 [gaim-migrate @ 10886]
Mark Doliner <mark@kingant.net>
parents: 9681
diff changeset
236 return 0;
c66345b33b88 [gaim-migrate @ 10886]
Mark Doliner <mark@kingant.net>
parents: 9681
diff changeset
237 return 1;
c66345b33b88 [gaim-migrate @ 10886]
Mark Doliner <mark@kingant.net>
parents: 9681
diff changeset
238 }
c66345b33b88 [gaim-migrate @ 10886]
Mark Doliner <mark@kingant.net>
parents: 9681
diff changeset
239
13168
bdb8d7beb5a7 [gaim-migrate @ 15531]
Evan Schoenberg <evan.s@dreskin.net>
parents: 11253
diff changeset
240 /**
bdb8d7beb5a7 [gaim-migrate @ 15531]
Evan Schoenberg <evan.s@dreskin.net>
parents: 11253
diff changeset
241 * Determine if a given screen name is an SMS number
bdb8d7beb5a7 [gaim-migrate @ 15531]
Evan Schoenberg <evan.s@dreskin.net>
parents: 11253
diff changeset
242 * (i.e. it begins with a +).
bdb8d7beb5a7 [gaim-migrate @ 15531]
Evan Schoenberg <evan.s@dreskin.net>
parents: 11253
diff changeset
243 *
bdb8d7beb5a7 [gaim-migrate @ 15531]
Evan Schoenberg <evan.s@dreskin.net>
parents: 11253
diff changeset
244 * @sn A valid AIM or ICQ screen name.
bdb8d7beb5a7 [gaim-migrate @ 15531]
Evan Schoenberg <evan.s@dreskin.net>
parents: 11253
diff changeset
245 * @return 1 if the screen name is an SMS number. Otherwise 0
bdb8d7beb5a7 [gaim-migrate @ 15531]
Evan Schoenberg <evan.s@dreskin.net>
parents: 11253
diff changeset
246 * is returned.
bdb8d7beb5a7 [gaim-migrate @ 15531]
Evan Schoenberg <evan.s@dreskin.net>
parents: 11253
diff changeset
247 */
bdb8d7beb5a7 [gaim-migrate @ 15531]
Evan Schoenberg <evan.s@dreskin.net>
parents: 11253
diff changeset
248 faim_export int aim_sn_is_sms(const char *sn)
bdb8d7beb5a7 [gaim-migrate @ 15531]
Evan Schoenberg <evan.s@dreskin.net>
parents: 11253
diff changeset
249 {
bdb8d7beb5a7 [gaim-migrate @ 15531]
Evan Schoenberg <evan.s@dreskin.net>
parents: 11253
diff changeset
250 if (sn[0] != '+')
bdb8d7beb5a7 [gaim-migrate @ 15531]
Evan Schoenberg <evan.s@dreskin.net>
parents: 11253
diff changeset
251 return 0;
bdb8d7beb5a7 [gaim-migrate @ 15531]
Evan Schoenberg <evan.s@dreskin.net>
parents: 11253
diff changeset
252 return 1;
bdb8d7beb5a7 [gaim-migrate @ 15531]
Evan Schoenberg <evan.s@dreskin.net>
parents: 11253
diff changeset
253 }
bdb8d7beb5a7 [gaim-migrate @ 15531]
Evan Schoenberg <evan.s@dreskin.net>
parents: 11253
diff changeset
254
2086
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
255 /*
2246
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
256 * int snlen(const char *)
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
257 *
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
258 * This takes a screen name and returns its length without
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
259 * spaces. If there are no spaces in the SN, then the
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
260 * return is equal to that of strlen().
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
261 *
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
262 */
2086
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
263 faim_export int aim_snlen(const char *sn)
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
264 {
2246
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
265 int i = 0;
2086
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
266
2246
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
267 if (!sn)
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
268 return 0;
2086
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
269
5556
8ab1875e6d09 [gaim-migrate @ 5957]
Mark Doliner <mark@kingant.net>
parents: 5414
diff changeset
270 while (*sn != '\0') {
8ab1875e6d09 [gaim-migrate @ 5957]
Mark Doliner <mark@kingant.net>
parents: 5414
diff changeset
271 if (*sn != ' ')
8ab1875e6d09 [gaim-migrate @ 5957]
Mark Doliner <mark@kingant.net>
parents: 5414
diff changeset
272 i++;
8ab1875e6d09 [gaim-migrate @ 5957]
Mark Doliner <mark@kingant.net>
parents: 5414
diff changeset
273 sn++;
2246
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
274 }
2086
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
275
2246
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
276 return i;
2086
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
277 }
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
278
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
279 /*
2246
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
280 * int sncmp(const char *, const char *)
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
281 *
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
282 * This takes two screen names and compares them using the rules
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
283 * on screen names for AIM/AOL. Mainly, this means case and space
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
284 * insensitivity (all case differences and spacing differences are
5628
9a34e950792e [gaim-migrate @ 6035]
Mark Doliner <mark@kingant.net>
parents: 5556
diff changeset
285 * ignored, with the exception that screen names can not start with
9a34e950792e [gaim-migrate @ 6035]
Mark Doliner <mark@kingant.net>
parents: 5556
diff changeset
286 * a space).
2246
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
287 *
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
288 * Return: 0 if equal
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
289 * non-0 if different
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
290 *
933346315b9b [gaim-migrate @ 2256]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2086
diff changeset
291 */
2086
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
292 faim_export int aim_sncmp(const char *sn1, const char *sn2)
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
293 {
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
294
10116
9f358a718f38 [gaim-migrate @ 11153]
Stu Tomlinson <stu@nosnilmot.com>
parents: 9975
diff changeset
295 if ((sn1 == NULL) || (sn2 == NULL))
9f358a718f38 [gaim-migrate @ 11153]
Stu Tomlinson <stu@nosnilmot.com>
parents: 9975
diff changeset
296 return -1;
9f358a718f38 [gaim-migrate @ 11153]
Stu Tomlinson <stu@nosnilmot.com>
parents: 9975
diff changeset
297
5928
395c7f769e05 [gaim-migrate @ 6368]
Mark Doliner <mark@kingant.net>
parents: 5927
diff changeset
298 do {
5556
8ab1875e6d09 [gaim-migrate @ 5957]
Mark Doliner <mark@kingant.net>
parents: 5414
diff changeset
299 while (*sn2 == ' ')
5724
c4e0b20cf466 [gaim-migrate @ 6146]
Mark Doliner <mark@kingant.net>
parents: 5628
diff changeset
300 sn2++;
5556
8ab1875e6d09 [gaim-migrate @ 5957]
Mark Doliner <mark@kingant.net>
parents: 5414
diff changeset
301 while (*sn1 == ' ')
5724
c4e0b20cf466 [gaim-migrate @ 6146]
Mark Doliner <mark@kingant.net>
parents: 5628
diff changeset
302 sn1++;
5928
395c7f769e05 [gaim-migrate @ 6368]
Mark Doliner <mark@kingant.net>
parents: 5927
diff changeset
303 if (toupper(*sn1) != toupper(*sn2))
395c7f769e05 [gaim-migrate @ 6368]
Mark Doliner <mark@kingant.net>
parents: 5927
diff changeset
304 return 1;
395c7f769e05 [gaim-migrate @ 6368]
Mark Doliner <mark@kingant.net>
parents: 5927
diff changeset
305 } while ((*sn1 != '\0') && sn1++ && sn2++);
2086
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
306
5928
395c7f769e05 [gaim-migrate @ 6368]
Mark Doliner <mark@kingant.net>
parents: 5927
diff changeset
307 return 0;
2086
424a40f12a6c [gaim-migrate @ 2096]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
308 }