1 <!DOCTYPE HTML PUBLIC
"-//W3C//DTD HTML 3.2//EN">
4 <TITLE> [IRCServices Coding] svcs5 - request
6 <LINK REL=
"Index" HREF=
"index.html" >
7 <LINK REL=
"made" HREF=
"mailto:ircservices-coding%40ircservices.za.net?Subject=%5BIRCServices%20Coding%5D%20svcs5%20-%20request&In-Reply-To=">
8 <META NAME=
"robots" CONTENT=
"index,nofollow">
9 <META http-equiv=
"Content-Type" content=
"text/html; charset=us-ascii">
10 <LINK REL=
"Previous" HREF=
"000092.html">
11 <LINK REL=
"Next" HREF=
"000093.html">
13 <BODY BGCOLOR=
"#ffffff">
14 <H1>[IRCServices Coding] svcs5 - request
</H1>
16 <A HREF=
"mailto:ircservices-coding%40ircservices.za.net?Subject=%5BIRCServices%20Coding%5D%20svcs5%20-%20request&In-Reply-To="
17 TITLE=
"[IRCServices Coding] svcs5 - request">achurch at achurch.org
19 <I>Sun Jan
6 22:
57:
52 PST
2002</I>
21 <LI>Previous message:
<A HREF=
"000092.html">[IRCServices Coding] newbee ircservices User
23 <LI>Next message:
<A HREF=
"000093.html">[IRCServices Coding] Services
5.0 alpha
11 released
25 <LI> <B>Messages sorted by:
</B>
26 <a href=
"date.html#88">[ date ]
</a>
27 <a href=
"thread.html#88">[ thread ]
</a>
28 <a href=
"subject.html#88">[ subject ]
</a>
29 <a href=
"author.html#88">[ author ]
</a>
34 <PRE> I'm planning to do this when I redo the database handling, but that
35 will be in a future version--the current design has settled too much for me
36 to want to redo it right now. As things stand now, such additions can
37 still be done--they just require a separate database. (Whether this is
38 more or less efficient than a structure of the kind described below is left
39 as an exercise for the reader.)
42 <A HREF=
"http://www.ircservices.za.net/mailman/listinfo/ircservices-coding">achurch at achurch.org
</A>
43 <A HREF=
"http://achurch.org/">http://achurch.org/
</A>
45 ><i> If you realy want other people to write useful modules, then it should b
47 </I>><i>possible for each module to extend the NickServ and ChanServ (and even th
49 </I>><i>others) databases. I suppose that having a:
51 </I>><i>struct ext_list {
52 </I>><i> struct ext_list *prev, *next;
54 </I>><i> size_t size;
55 </I>><i> void *buf;
58 </I>><i>that will form a list for each nickname/channel whould be what we need. I
60 </I>><i>should be easy to save it using the existing database format.
61 </I>><i>Also by providing some functions like:
63 </I>><i>struct ext_list *get_extlist_memb(struct ext_list *head, long id);
65 </I>><i>void update_extlist_memb(struct ext_list **head, long id, size_t size,
66 </I>><i> void *buf);
68 </I>><i>/* and one for delete */
70 </I>><i>it should be very easy to handle it.
72 </I>><i>Each module will only need to have a fixed unique integer to use and it w
74 </I>><i>need only one field to be added to struct NickInfo etc.. like:
76 </I>><i>struct NickInfo {
78 </I>><i> struct ext_list *head;
81 </I>><i>and after that..
83 </I>><i>/**********************************************/
85 </I>><i>#define MY_ID
0x1234
87 </I>><i> struct NickInfo *ni;
88 </I>><i> struct ext_list *el;
90 </I>><i> ...code...
92 </I>><i> update_extlist_memb(
&(ni-
>head), MY_ID,
7,
"RANDOM
" );
94 </I>><i> ...code...
96 </I>><i> el=get_extlist_memb(ni-
>head, MY_ID);
98 </I>><i> /* and there we have el==NULL or el-
>buf ==
"RANDOM
" */
100 </I>><i>/**********************************************/
102 </I>><i>Something like this whould *REALY* help to add functionality without chan
104 </I>><i>existing code, without creating another database and will be compatible t
106 </I>><i>future versions.
109 </I>><i><<V13
>>
110 </I>><i>------------------------------------------------------------------
111 </I>><i>To unsubscribe or change your subscription options, visit:
112 </I>><i><A HREF=
"http://www.ircservices.za.net/mailman/listinfo/ircservices-coding">http://www.ircservices.za.net/mailman/listinfo/ircservices-coding
</A>
120 <LI>Previous message:
<A HREF=
"000092.html">[IRCServices Coding] newbee ircservices User
122 <LI>Next message:
<A HREF=
"000093.html">[IRCServices Coding] Services
5.0 alpha
11 released
124 <LI> <B>Messages sorted by:
</B>
125 <a href=
"date.html#88">[ date ]
</a>
126 <a href=
"thread.html#88">[ thread ]
</a>
127 <a href=
"subject.html#88">[ subject ]
</a>
128 <a href=
"author.html#88">[ author ]
</a>