Use :retab to conver tab to 2 spaces
[rahunas] / ChangeLog
1 2008-12-03  Neutron Soutmun <neo.neutron@gmail.com>
2
3         * src/rahunasd.{c,h}, src/rh-config.h, src/rh-ipset.{c,h}, 
4           src/rh-task-ipset.c, src/rh-task-memset.c, src/rh-task.h, 
5           src/rh-xmlrpc-cmd.c, src/rh-xmlrpc-server.{c,h}:
6           Use :retab to convert tab to 2 spaces.
7
8 2008-12-01  Neutron Soutmun <neo.neutron@gmail.com>
9
10         * example/firewall.sh.in:
11           - Fix the syntax error in excluded ip rules.
12           - Fix the malfunction of whitespace trim in the get_config_value() by
13             only left and right trim rather than trim every whitespace. This error
14             affect the excluded value which have many values whitespace separated.
15           - Fix $N malform declaration cause of the Usage message never show.
16
17 2008-11-28  Neutron Soutmun <neo.neutron@gmail.com>
18
19         * weblogin/config.php, weblogin/locale.php: Add default language setting.
20
21 2008-11-28  Neutron Soutmun <neo.neutron@gmail.com>
22
23         * src/rh-ipset.c: Fix mem free by replace free() with rh_free() for the 
24           variable allocated memory by rh_malloc() which prevent the double free.
25
26 2008-11-28  Neutron Soutmun <neo.neutron@gmail.com>
27
28         * weblogin/locale.php, weblogin/locale/*, +weblogin/messages.php,
29           weblogin/login.php, weblogin/logout.php: 
30           Add multilingual weblogin base on PHP gettext, now supported languages are 
31           Thai and English.
32         * weblogin/loading.gif, weblogin/note.txt: 
33           Change the loading animation picture which now is the hourclass spinning 
34           downloaded from www.clipartpoint.com. (Free to use it on website)
35         * -weblogin/rahu-{loading,waiting}.gif: Remove unused pictures.
36         * weblogin/templates/*/rahunas.css: Add new customized CSS for each template
37           which now can customized independently from the core.
38         * weblogin/templates/rahunas/rahunas.html: Adjust the rahunas template.
39
40 2008-11-27  Neutron Soutmun <neo.neutron@gmail.com>
41
42         * weblogin/config.php: 
43           - Adjust the weblogin config value to satisfy the default settings of 
44             RahuNAS.
45           - Set rahunas theme to be default theme.
46         * weblogin/{indedx,login,logout}.php,
47           weblogin/{rahu_radius.class,rahu_xmlrpc.class,xmlrpc_service}.php:
48           - Convert tab to 2 spaces (Beautify code for text editor compatibility).
49
50 2008-11-27  Neutron Soutmun <neo.neutron@gmail.com>
51
52         * -example/rahunas.{default,init,conf}, -example/{firewall,bandwidth}.sh
53           +example/rahunas.{default,init,conf}.in, 
54           +example/{firewall,bandwidth}.sh.in:
55           - Raname the wrapper script and example config files to .in which all of
56             them will be autogenerated on build time with the respective prefix path.
57         * configure.ac: Add the files above to AC_CONFIG_FILES.
58
59 2008-11-27  Neutron Soutmun <neo.neutron@gmail.com>
60
61         [ Suriya Soutmun ]
62         * +lcfg/lcfg_static.{h,c}, +lcfg/Makefile.am, +src/rh-config.c,
63           src/rahunasd.{h,c}:
64           Add liblcfg and their implementation to satisfy RahuNAS requirement.
65         * Makefile.am, configure.ac, src/Makefile.am: 
66           Add the lcfg and their implementation to build config and makefile.
67
68         [ Neutron Soutmun ]
69         * +example/rahunas.conf: Add example config file.
70         * -example/rahunas.firewall, -example/rahunas.bandwidth,
71           +example/firewall.sh, +example/bandwidth.sh:
72           - Rename the wrapper script.
73           - Adjust the firewall.sh to satisfy the config implementation.
74         * example/rahunas.default: 
75           Remove the parts the moved to the config file.
76         * src/rh-ipset.c, src/rh-task-ipset.c, src/rh-xmlrpc-cmd.c:
77           Update accordingly to new config implementation.
78
79 2008-11-26  Neutron Soutmun <neo.neutron@gmail.com>
80
81         * example/rahunas.bandwidth: Fix the script delete all filters rather than 
82           the specified flowid.
83
84 2008-11-26  Neutron Soutmun <neo.neutron@gmail.com>
85
86         * -rahunas.{init,default,firewall,bandwidth},
87           +example/rahunas.{init,default,firewall,bandwidth}:
88           Move rahunas.* wrapper scripts to example dir.
89
90 2008-11-26  Neutron Soutmun <neo.neutron@gmail.com>
91
92         * configure.ac: Remove old RAHUNAS_VERSION which now replaced by 
93           AC_SUBST(RAHUNAS_VERSION, major.minor.micro). 
94
95 2008-11-25  Neutron Soutmun <neo.neutron@gmail.com>
96
97         * rahunas.default: 
98           Add bandwidth shaping support by using the IMQ and iproute2.
99         * rahunas.firewall: 
100           Adjust to prevent the re-init firewall that cause the failure on the 
101                 stop process.
102         * rahunas.init: 
103           Adjust the firewall script caller.
104         * +rahunas.bandwidth: Add the rahunas bandwidth wrapper script.
105
106         * src/rh-task-bandwidth.{h,c}: Add bandwidth shaping task which response to
107           the WISPr-Bandwidth-Max-{Up,Down} that reply from RADIUS.
108         * src/rahunasd.h: Add bandwidth_slot_id into members structure.
109         * src/rh-task-dbset.c: 
110           - Add bandwidth_* into dbset_row structure.
111           - Add insert, fetch and restore code of bandwidth_* from DB into dbset_row 
112             structure.
113           - Change task priority to 10. (Lowest priority now).
114         * src/rh-task-ipset.c: 
115           Change task priority to 30. 
116         * src/rh-task-memset.c: 
117           Change task priority to 40. (Highest priority).
118         * src/rh-task.c: 
119           Include and register new task, bandwidth task.
120         * src/rh-task.h: 
121           Change the bandwidth_max_* type from long to unsigned long.
122         * src/Makefile.am: 
123           Update accordingly to bandwidth task implementation.
124         * weblogin/logout.php: 
125           Update CSS style for loginbox background.
126         * weblogin/templates/kkulogin/kkulogin.html: 
127           Update KKU-Login template.
128         * data/rahunas.db: 
129           Alter the schema of dbset table to support bandwidth fields.
130
131 2008-11-20  Neutron Soutmun <neo.neutron@gmail.com>
132
133         * rahunas.firewall: Add excluded IP support.
134
135 2008-11-19  Neutron Soutmun <neo.neutron@gmail.com>
136
137         * src/rh-xmlrpc-cmd.c: Fixed half-close socket, cause of the socket stay in 
138           the CLOSE_WAIT state (TCP resources starvation by mistake - forgot to close
139           the socket).
140
141 2008-11-18  Neutron Soutmun <neo.neutron@gmail.com>
142
143         * src/rh-ipset.c: 
144           Do not warning in syslog when the shutdown() and close() socket, fix syslog     flooding.
145
146 2008-11-14  Neutron Soutmun <neo.neutron@gmail.com>
147
148         * src/rh-ipset.c: 
149           Fixed the too many open files due to the uncleanly close sockets.
150         * src/rh-task-dbset.c:
151           Fixed the too many open temporary files due to unclosed connections.
152         * src/rh-xmlrpc-server.c:
153           Fixed the Session-Timeout handler which it does not set the session_timeout
154           in members data to 0 when the Session-Timeout is not set. 
155
156 2008-11-12  Neutron Soutmun <neo.neutron@gmail.com>
157
158         * weblogin/logout.php: Substring the request url to shorten the line
159           when it length longer than 20 chars.
160
161 2008-11-11  Neutron Soutmun <neo.neutron@gmail.com>
162
163         * rahunas.{default,firewall}: Add supporting for DHCP and DNS forwarding, 
164           Proxy, Transparent-Proxy and the Natwork Address Translation (Masquerading).
165         * weblogin/templates/rahunas/*: Add new login template for rahunas, 
166           "My inspiration" - featuring by my daughter, "Music".
167         * weblogin/{login,logout}.php: Adjust to support new template.
168
169 2008-11-06  Neutron Soutmun <neo.neutron@gmail.com>
170
171         * src/rahunas.{h,c}, src/rh-task-memset.c, rh-task.h, src/rh-xmlrpc-server.c:
172                 Add Session-Timeout support
173
174         * weblogin/login.php, weblogin/logout.php, weblogin/rahu_radius.class.php,
175           weblogin/rahu_xmlrpc.class.php:
176           Add Session-Timeout support and prepare the WISPr-Bandwidth-Max-{Down,Up}.
177
178 2008-11-03  Neutron Soutmun <neo.neutron@gmail.com>
179
180         * rahunas.firewall:
181           - Adjust the firewall to define new chain for easy start and stop.
182           - The firewall now cleanly start and stop by do not disturb other rules
183             than this script done.
184         * rahunas.init: Update respectively to rahunas.firewall changes.
185
186 2008-10-24  Neutron Soutmun <neo.neutron@gmail.com>
187
188         * src/rahunasd.h, src/rh-xmlrpc-server.c:
189           Empty MAC Address now substitute by DEFAULT_MAC (00:00:00:00:00:00) to
190                 support the new ignoremac feature (Tested with the OSPF Routing Protocol).
191
192         * weblogin/config.php, weblogin/index.php, weblogin/login.php, 
193           weblogin/logout.php:
194                 - Add supporting for https port number other than default 443. 
195                 - Default https port for RahuNAS is 8443. 
196         
197         * rahunas.firewall: 
198           - Adjust the wrong connmark from 10 to 0x2; 
199           - Remove unnecessary command.
200
201 2008-10-16  Neutron Soutmun <neo.neutron@gmail.com>
202
203         * +weblogin/*: Add the PHP web login.
204
205 2008-10-16  Neutron Soutmun <neo.neutron@gmail.com>
206
207         * -rahunas.in: Remove unnecessary.
208
209 2008-10-16  Neutron Soutmun <neo.neutron@gmail.com>
210
211         * +rahunas.{init.default,firewall}: Add the support scripts for do the 
212           initialize daemon, firewall and daemon config.
213         * data/rahunas.db: Remove the tested data from db.
214
215 2008-10-10  Neutron Soutmun <neo.neutron@gmail.com>
216
217         * configure.ac:
218           - Add the module checking for libgda which require to build the new 
219             database session backups (sqlite3).
220           - Add the major, minor and micro variables to easy handle the future 
221             version bump.
222           - Add VERSION and PROGRAM variables which will be used in the core program.
223           - Add data/Makefile.
224                 - Add src/include/linux/netfilter_ipv4/Makefile to include it in the 
225                   distribution. (make dist-*) 
226         * src/rahunasd.{h,c}: Update the code which using VERSION and PROGRAM 
227                   corresponding to the build config.
228         * +data/Makefile.am, +data/rahunas.db, Makefile.am: 
229           Add data dir which now contains sqlite3 db file and update makefile.
230         * +src/rh-task-dbset.{h,c}:     
231           Add the database session backups task.
232         * src/Makefile.am:
233           - Update corresponding to the new database session backups task.
234           - Add missing header files to rahunasd_SOURCES which they are not included
235                   in the distribution. (make dist-*)
236         * src/rh-config.h: Define DB_NAME which using by task-dbset.  
237         * src/rh-task-ipset.c: 
238           - Update taskprio from 1 to 2 for the appropriate 
239             point of working which now the ipset is the middle priority task.
240           - Update the positions of the logmsg. (Debuging purpose)
241         * src/rh-task-memset.c:
242           - Update taskprio from 2 to 3 for the appropriate 
243             point of working which now the memset is the most priority task.
244           - Update the positions of the logmsg. (Debuging purpose)
245         * src/rh-task.{h,c}: 
246           - Change the way to handle the tasklist from singly linked-list to the
247             GList from GLib which can handle the forward and backward link. (Doubly
248                   linked-list), the tasks eq. stopservice, stopsess, cleanup need to start 
249             from the least priority first. (Prevent the most significant data in 
250             memset was deleted which will cause the failures of the other tasks that 
251                         depend on it.
252           - Update the struct task structure by remove unneeded *next which now we
253             handle the task list by the GList.
254         * src/rh-xmlrpc-server.c: Move the req.id and req.req_opt to the inner of 
255           the condition checking because of their values not even use if the 
256           conditions are not true.
257         * +src/include/linux/netfilter_ipv4/Makefile.am: Add the header files in this 
258           dir to EXTRA_DIST which they will be distribute in the distribution.
259
260 2008-09-12  Neutron Soutmun <neo.neutron@gmail.com>
261
262         * +src/rh-task-*.{h,c}: 
263                 - Add the tasks concept of the workers. eg. memset, ipset,
264             dbset and etc. 
265           - Each tasks provide the function to handle each events, 
266                         eg. init, start and stop service, start and stop session.
267         * src/rahunas.{h,c}, src/rh-ipset.{h,c}, src/rh-utils.{h,c},
268           src/rh-xmlrpc-server.c: 
269           Change respectively to new tasks concept and do code beautifier. 
270         * +src/rh-config.h: Move the configuration definitions from rahunasd.h.
271         * src/Makefile.am: Change respectively to properly build the tasks concept.
272         * AUTHORS: Add Suriya Soutmun to the author team.
273
274 2008-09-03  Neutron Soutmun <neo.neutron@gmail.com>
275
276         * src/rahunasd.{h,c}: 
277           - Handle the signal and when child process is stopped or restart, 
278             send the stop accounting to Radius with NAS Reboot code.
279         * +src/rh-radius.h: Add predefined termination code of Radius.
280         * src/rh-xmlrpc-cmd.{h,c}: Change send_xmlrpc_stopacct() API, which provide
281           the ability to send the cause of the stop accounting.
282
283 2008-09-02  Neutron Soutmun <neo.neutron@gmail.com>
284
285         * src/rh-xmlrpc-cmd.h, src/rh-utils.h: Add header definitions.
286
287 2008-09-02  Neutron Soutmun <neo.neutron@gmail.com>
288
289         * +src/rh-xmlrpc-cmd.{h,c}: Add new xmlrpc client command sender.
290         * src/rahunasd.c: Move the send_xmlrpc_stopacct() code to rh-xmlrpc-cmd.
291         * src/Makefile.am: Update accordingly to new change.
292
293 2008-09-01  Neutron Soutmun <neo.neutron@gmail.com>
294
295         * src/rahunasd.c: Remove unnecessary functions.
296         * src/rh-xmlrpc-server.c: Free the allocated memory of the the vars that 
297           calling rh_string_get_sep().
298
299 2008-08-31  Neutron Soutmun <neo.neutron@gmail.com>
300
301         * +src/rh-utils.{h,c}: Add new utility functions.
302         * src/rahunasd.{h,c}: 
303           - Move rh_malloc() and rh_free() to rh-utils.
304           - include file rh-utils.h which now provide rh_{malloc,free}().
305         * src/rh-ipset.c: include file rh-utils.h.
306         * src/rh-xmlrpc-server.c:
307           - Implement new function rh_string_get_sep() which more clean looking code.
308         * src/Makefile.am: Update accordingly to new change.
309
310 2008-08-25  Neutron Soutmun <neo.neutron@gmail.com>
311
312         * src/rh-ipset.c:
313           - Shutdown will not close the socket after finish the request, 
314             try close() to done.
315
316 2008-08-23  Neutron Soutmun <neo.neutron@gmail.com>
317
318         * src/rh-ipset.c:
319           - Shutdown the socket after finish the request.
320           - Log the errno of the failure of the kernel_getsocket() to syslog for 
321             later debuging.
322
323 2008-08-23  Neutron Soutmun <neo.neutron@gmail.com>
324
325         * src/rahunasd.h:
326           - Fix typo the project name, it is shame.
327           - Change POLLING interval from 30 seconds to 60 seconds, 
328             try to prevent the socket access overload.
329         * src/rh-ipset.{h,c}:
330           - Try to open the socket until over the limit GETSOCK_TRIES before exit with            EXIT_FAILURE status.
331
332 2008-08-22  Neutron Soutmun <neo.neutron@gmail.com>
333
334         * src/rahunasd.c, src/rh-xmlrpc-server.c:
335           - Rename dummy to termstring (make sense).
336           - More preventing the segfault due to print NULL string pointer.
337
338 2008-08-21  Neutron Soutmun <neo.neutron@gmail.com>
339
340         * src/rahunasd.{h,c}, src/rh-xmlrpc-server.c:
341           - Prevent the segfault due to the log printing username and session_id 
342             pointing to NULL.
343           - Implement the ipset Flush set command.
344         * src/rh-ipset.{h,c}: Add code to support ipset Flush set command.
345         * + rahunas.in: Add init script example.
346
347 2008-08-21  Neutron Soutmun <neo.neutron@gmail.com>
348
349         * src/rahunasd.c: Remove the including to ipset-control.h which not exist now.
350
351 2008-08-21  Neutron Soutmun <neo.neutron@gmail.com>
352
353         * src/include/linux/netfilter_ipv4/ip_set*.h: 
354           add to resolve FTBFS when clone from git (forgot to commit last time).
355
356 2008-08-21  Neutron Soutmun <neo.neutron@gmail.com>
357
358         * src/rahunasd.{h,c}, src/rh-ipset.{h,c}, src/rh-xmlrpc-server.c:
359           Implement the native ipset command, the codes are adapted from ipset 
360           userspace program.
361         * src/ipset-control.{h,c}: Removed as they are replaced by new native ipset
362           implementation.
363         * src/Makefile.am: Adjust to support new native ipset implementation.
364
365 2008-08-20  Neutron Soutmun <neo.neutron@gmail.com>
366
367         * src/rahunas.{h,c}:
368           - Replace logmsg which using RH_DEBUG to new DP().
369
370 2008-08-20  Neutron Soutmun <neo.neutron@gmail.com>
371
372         * src/rahunas.h:
373           - Add predefine RH_LOG_LEVEL and set it to RH_LOG_NORMAL.
374           - Remove unneccessary code.
375
376 2008-08-20  Neutron Soutmun <neo.neutron@gmail.com>
377
378         * src/rahunas.h:
379           - Add timemsg(), static funtion returning the time message for logging. 
380           - Adjust DP() for the DEBUG logging, which activate by define RH_DEBUG in 
381             compilation time.
382
383         * src/rahunas.c:
384           - Adjust logmsg() to use the new timemsg().
385
386 2008-08-19  Neutron Soutmun <neo.neutron@gmail.com>
387
388         * src/rahunas.{h,c}:
389           - pipe stderr stream to logfile.
390
391         * src/rahunas.h:
392           - Add minor version numbering to VERSION.
393           - Change MAX_MEMBERS from dec to hex.
394
395 2008-08-19  Neutron Soutmun <neo.neutron@gmail.com>
396
397         * === First import the project ===