From (spam-protected) Tue Nov 8 12:24:06 2005 From: (spam-protected) (Andreas Tønnesen) Date: Tue, 08 Nov 2005 11:24:06 +0000 Subject: [Olsr-cvs] olsrd-current/lib/dot_draw/src olsrd_dot_draw.c, 1.17, 1.18 Message-ID: Update of /cvsroot/olsrd/olsrd-current/lib/dot_draw/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28602/dot_draw/src Modified Files: olsrd_dot_draw.c Log Message: Added patch by Bernd Petrovitsch Index: olsrd_dot_draw.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/lib/dot_draw/src/olsrd_dot_draw.c,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -d -r1.17 -r1.18 *** olsrd_dot_draw.c 13 Jul 2005 21:43:16 -0000 1.17 --- olsrd_dot_draw.c 8 Nov 2005 11:24:04 -0000 1.18 *************** *** 78,85 **** ! int ipc_socket; ! int ipc_open; ! int ipc_connection; ! int ipc_socket_up; --- 78,86 ---- ! static int ipc_socket; ! static int ipc_open; ! static int ipc_connection; ! static int ipc_socket_up; ! *************** *** 110,113 **** --- 111,117 ---- ipc_send(char *, int); + static int + ipc_send_str(char *); + static double calc_etx(double, double); *************** *** 152,156 **** { char buf[256]; - int len; char* adr; double etx=0.0; --- 156,159 ---- *************** *** 158,163 **** struct link_entry* link; adr = olsr_ip_to_string(&main_addr); ! len = sprintf( buf, "\"%s\" -> ", adr ); ! ipc_send(buf, len); adr = olsr_ip_to_string(&neighbor->neighbor_main_addr); --- 161,166 ---- struct link_entry* link; adr = olsr_ip_to_string(&main_addr); ! sprintf( buf, "\"%s\" -> ", adr ); ! ipc_send_str(buf); adr = olsr_ip_to_string(&neighbor->neighbor_main_addr); *************** *** 173,182 **** } ! len = sprintf( buf, "\"%s\"[label=\"%.2f\", style=%s];\n", adr, etx, style ); ! ipc_send(buf, len); if (neighbor->is_mpr) { ! len = sprintf( buf, "\"%s\"[shape=box];\n", adr ); ! ipc_send(buf, len); } } --- 176,185 ---- } ! sprintf( buf, "\"%s\"[label=\"%.2f\", style=%s];\n", adr, etx, style ); ! ipc_send_str(buf); if (neighbor->is_mpr) { ! sprintf( buf, "\"%s\"[shape=box];\n", adr ); ! ipc_send_str(buf); } } *************** *** 311,315 **** /* Print tables to IPC socket */ ! ipc_send("digraph topology\n{\n", strlen("digraph topology\n{\n")); /* Neighbors */ --- 314,318 ---- /* Print tables to IPC socket */ ! ipc_send_str("digraph topology\n{\n"); /* Neighbors */ *************** *** 366,370 **** ! ipc_send("}\n\n", strlen("}\n\n")); res = 1; --- 369,373 ---- ! ipc_send_str("}\n\n"); res = 1; *************** *** 394,408 **** { char buf[256]; - int len; char* adr; double etx = calc_etx( dst_entry->link_quality, dst_entry->inverse_link_quality ); adr = olsr_ip_to_string(&entry->T_last_addr); ! len = sprintf( buf, "\"%s\" -> ", adr ); ! ipc_send(buf, len); adr = olsr_ip_to_string(&dst_entry->T_dest_addr); ! len = sprintf( buf, "\"%s\"[label=\"%.2f\"];\n", adr, etx ); ! ipc_send(buf, len); } --- 397,410 ---- { char buf[256]; char* adr; double etx = calc_etx( dst_entry->link_quality, dst_entry->inverse_link_quality ); adr = olsr_ip_to_string(&entry->T_last_addr); ! sprintf( buf, "\"%s\" -> ", adr ); ! ipc_send_str(buf); adr = olsr_ip_to_string(&dst_entry->T_dest_addr); ! sprintf( buf, "\"%s\"[label=\"%.2f\"];\n", adr, etx ); ! ipc_send_str(buf); } *************** *** 414,434 **** adr = olsr_ip_to_string(gw); ! ipc_send("\"", 1); ! ipc_send(adr, strlen(adr)); ! ipc_send("\" -> \"", strlen("\" -> \"")); adr = olsr_ip_to_string(net); ! ipc_send(adr, strlen(adr)); ! ipc_send("/", 1); adr = olsr_netmask_to_string(mask); ! ipc_send(adr, strlen(adr)); ! ipc_send("\"[label=\"HNA\"];\n", strlen("\"[label=\"HNA\"];\n")); ! ipc_send("\"", 1); adr = olsr_ip_to_string(net); ! ipc_send(adr, strlen(adr)); ! ipc_send("/", 1); adr = olsr_netmask_to_string(mask); ! ipc_send(adr, strlen(adr)); ! ipc_send("\"", 1); ! ipc_send("[shape=diamond];\n", strlen("[shape=diamond];\n")); } --- 416,444 ---- adr = olsr_ip_to_string(gw); ! ipc_send_str("\""); ! ipc_send_str(adr); ! ipc_send_str("\" -> \""); adr = olsr_ip_to_string(net); ! ipc_send_str(adr); ! ipc_send_str("/"); adr = olsr_netmask_to_string(mask); ! ipc_send_str(adr); ! ipc_send_str("\"[label=\"HNA\"];\n"); ! ipc_send_str("\""); adr = olsr_ip_to_string(net); ! ipc_send_str(adr); ! ipc_send_str("/"); adr = olsr_netmask_to_string(mask); ! ipc_send_str(adr); ! ipc_send_str("\""); ! ipc_send_str("[shape=diamond];\n"); ! } ! ! static int ! ipc_send_str(char *data) ! { ! if(!ipc_open) ! return 0; ! return ipc_send(data, strlen(data)); } *************** *** 455,461 **** } - - static char netmask[5]; - static char* olsr_netmask_to_string(union hna_netmask *mask) --- 465,468 ---- *************** *** 468,479 **** in.s_addr = mask->v4; ret = inet_ntoa(in); - return ret; - } else { /* IPv6 */ sprintf(netmask, "%d", mask->v6); ! return netmask; } --- 475,485 ---- in.s_addr = mask->v4; ret = inet_ntoa(in); } else { /* IPv6 */ + static char netmask[5]; sprintf(netmask, "%d", mask->v6); ! ret = netmask; } From (spam-protected) Tue Nov 8 18:05:26 2005 From: (spam-protected) (Andreas Tønnesen) Date: Tue, 08 Nov 2005 17:05:26 +0000 Subject: [Olsr-cvs] olsrd-current/src/olsr_switch main.c,1.21,1.22 Message-ID: Update of /cvsroot/olsrd/olsrd-current/src/olsr_switch In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27612 Modified Files: main.c Log Message: Removed debug output Index: main.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/olsr_switch/main.c,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -d -r1.21 -r1.22 *** main.c 23 Oct 2005 19:01:04 -0000 1.21 --- main.c 8 Nov 2005 17:05:23 -0000 1.22 *************** *** 462,467 **** stdin_handler(); - printf("*"); - fflush(stdout); } #else --- 462,465 ---- From (spam-protected) Tue Nov 8 18:11:48 2005 From: (spam-protected) (Andreas Tønnesen) Date: Tue, 08 Nov 2005 17:11:48 +0000 Subject: [Olsr-cvs] olsrd-current/lib/secure .cvsignore,NONE,1.1 Message-ID: Update of /cvsroot/olsrd/olsrd-current/lib/secure In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30340/lib/secure Added Files: .cvsignore Log Message: Added cvsignore files from Bernds patch --- NEW FILE: .cvsignore --- *.d olsrd_secure.so.* From (spam-protected) Tue Nov 8 18:11:48 2005 From: (spam-protected) (Andreas Tønnesen) Date: Tue, 08 Nov 2005 17:11:48 +0000 Subject: [Olsr-cvs] olsrd-current/lib/httpinfo .cvsignore,NONE,1.1 Message-ID: Update of /cvsroot/olsrd/olsrd-current/lib/httpinfo In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30340/lib/httpinfo Added Files: .cvsignore Log Message: Added cvsignore files from Bernds patch --- NEW FILE: .cvsignore --- *.d olsrd_httpinfo.so.* From (spam-protected) Tue Nov 8 18:11:48 2005 From: (spam-protected) (Andreas Tønnesen) Date: Tue, 08 Nov 2005 17:11:48 +0000 Subject: [Olsr-cvs] olsrd-current/lib/dyn_gw .cvsignore,NONE,1.1 Message-ID: Update of /cvsroot/olsrd/olsrd-current/lib/dyn_gw In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30340/lib/dyn_gw Added Files: .cvsignore Log Message: Added cvsignore files from Bernds patch --- NEW FILE: .cvsignore --- *.d olsrd_dyn_gw.so.* From (spam-protected) Tue Nov 8 18:11:48 2005 From: (spam-protected) (Andreas Tønnesen) Date: Tue, 08 Nov 2005 17:11:48 +0000 Subject: [Olsr-cvs] olsrd-current/lib/powerinfo .cvsignore,NONE,1.1 Message-ID: Update of /cvsroot/olsrd/olsrd-current/lib/powerinfo In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30340/lib/powerinfo Added Files: .cvsignore Log Message: Added cvsignore files from Bernds patch --- NEW FILE: .cvsignore --- *.d olsrd_power.so.* From (spam-protected) Tue Nov 8 18:11:48 2005 From: (spam-protected) (Andreas Tønnesen) Date: Tue, 08 Nov 2005 17:11:48 +0000 Subject: [Olsr-cvs] olsrd-current/lib/dot_draw .cvsignore,NONE,1.1 Message-ID: Update of /cvsroot/olsrd/olsrd-current/lib/dot_draw In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30340/lib/dot_draw Added Files: .cvsignore Log Message: Added cvsignore files from Bernds patch --- NEW FILE: .cvsignore --- *.d olsrd_dot_draw.so.* From (spam-protected) Tue Nov 8 18:11:49 2005 From: (spam-protected) (Andreas Tønnesen) Date: Tue, 08 Nov 2005 17:11:49 +0000 Subject: [Olsr-cvs] olsrd-current/lib/mini .cvsignore,NONE,1.1 Message-ID: Update of /cvsroot/olsrd/olsrd-current/lib/mini In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30340/lib/mini Added Files: .cvsignore Log Message: Added cvsignore files from Bernds patch --- NEW FILE: .cvsignore --- *.d olsrd_mini.so.* From (spam-protected) Tue Nov 8 18:11:49 2005 From: (spam-protected) (Andreas Tønnesen) Date: Tue, 08 Nov 2005 17:11:49 +0000 Subject: [Olsr-cvs] olsrd-current/lib/tas .cvsignore,NONE,1.1 Message-ID: Update of /cvsroot/olsrd/olsrd-current/lib/tas In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30340/lib/tas Added Files: .cvsignore Log Message: Added cvsignore files from Bernds patch --- NEW FILE: .cvsignore --- *.d olsrd_tas.so.* From (spam-protected) Tue Nov 8 18:11:49 2005 From: (spam-protected) (Andreas Tønnesen) Date: Tue, 08 Nov 2005 17:11:49 +0000 Subject: [Olsr-cvs] olsrd-current/lib/nameservice .cvsignore,NONE,1.1 Message-ID: Update of /cvsroot/olsrd/olsrd-current/lib/nameservice In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30340/lib/nameservice Added Files: .cvsignore Log Message: Added cvsignore files from Bernds patch --- NEW FILE: .cvsignore --- *.d olsrd_nameservice.so.* From (spam-protected) Tue Nov 8 18:11:49 2005 From: (spam-protected) (Andreas Tønnesen) Date: Tue, 08 Nov 2005 17:11:49 +0000 Subject: [Olsr-cvs] olsrd-current/lib/pgraph .cvsignore,NONE,1.1 Message-ID: Update of /cvsroot/olsrd/olsrd-current/lib/pgraph In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30340/lib/pgraph Added Files: .cvsignore Log Message: Added cvsignore files from Bernds patch --- NEW FILE: .cvsignore --- *.d olsrd_pgraph.so.* From (spam-protected) Tue Nov 8 18:11:49 2005 From: (spam-protected) (Andreas Tønnesen) Date: Tue, 08 Nov 2005 17:11:49 +0000 Subject: [Olsr-cvs] olsrd-current/src/cfgparser .cvsignore,NONE,1.1 Message-ID: Update of /cvsroot/olsrd/olsrd-current/src/cfgparser In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30340/src/cfgparser Added Files: .cvsignore Log Message: Added cvsignore files from Bernds patch --- NEW FILE: .cvsignore --- *.d olsrd_cfgparser.so.* oparse.[ch] oscan.c From (spam-protected) Tue Nov 8 18:11:49 2005 From: (spam-protected) (Andreas Tønnesen) Date: Tue, 08 Nov 2005 17:11:49 +0000 Subject: [Olsr-cvs] .cvsignore,NONE,1.1 Message-ID: Update of /cvsroot/olsrd In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30340 Added Files: .cvsignore Log Message: Added cvsignore files from Bernds patch --- NEW FILE: .cvsignore --- *.d olsrd From (spam-protected) Tue Nov 8 18:31:06 2005 From: (spam-protected) (=?ISO-8859-1?Q?Andreas_T=F8nnesen?=) Date: Tue, 08 Nov 2005 18:31:06 +0100 Subject: [Olsr-cvs] cvsignore Message-ID: <4370E0DA.8090504@olsr.org> bah.. sorry about the .cvsignore files :-) From (spam-protected) Thu Nov 10 20:25:39 2005 From: (spam-protected) (Andreas Tønnesen) Date: Thu, 10 Nov 2005 19:25:39 +0000 Subject: [Olsr-cvs] olsrd-current/lib/secure/src olsrd_secure.c,1.14,1.15 Message-ID: Update of /cvsroot/olsrd/olsrd-current/lib/secure/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28878/src Modified Files: olsrd_secure.c Log Message: Removed warnings Index: olsrd_secure.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/lib/secure/src/olsrd_secure.c,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** olsrd_secure.c 29 May 2005 12:47:44 -0000 1.14 --- olsrd_secure.c 10 Nov 2005 19:25:37 -0000 1.15 *************** *** 72,78 **** static void - MD5_checksum(char *, olsr_u16_t, char *); - - static void MD5_checksum(char *data, olsr_u16_t data_len, char *hashbuf) { --- 72,75 ---- *************** *** 80,85 **** MD5Init(&context); ! MD5Update(&context, data, data_len); ! MD5Final(hashbuf, &context); } --- 77,82 ---- MD5Init(&context); ! MD5Update(&context, (unsigned char *)data, data_len); ! MD5Final((unsigned char *)hashbuf, &context); } From (spam-protected) Thu Nov 10 20:28:04 2005 From: (spam-protected) (Andreas Tønnesen) Date: Thu, 10 Nov 2005 19:28:04 +0000 Subject: [Olsr-cvs] olsrd-current/lib/httpinfo/src olsrd_httpinfo.c, 1.53, 1.54 Message-ID: Update of /cvsroot/olsrd/olsrd-current/lib/httpinfo/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29358/src Modified Files: olsrd_httpinfo.c Log Message: Removed warning Index: olsrd_httpinfo.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/lib/httpinfo/src/olsrd_httpinfo.c,v retrieving revision 1.53 retrieving revision 1.54 diff -C2 -d -r1.53 -r1.54 *** olsrd_httpinfo.c 29 May 2005 12:47:41 -0000 1.53 --- olsrd_httpinfo.c 10 Nov 2005 19:28:02 -0000 1.54 *************** *** 962,968 **** (neigh->status == SYM) ? "YES" : "NO", neigh->is_mpr ? "YES" : "NO", ! olsr_lookup_mprs_set ? ! (olsr_lookup_mprs_set(&neigh->neighbor_main_addr) ? "YES" : "NO") ! : "UNAVAILABLE", neigh->willingness); --- 962,966 ---- (neigh->status == SYM) ? "YES" : "NO", neigh->is_mpr ? "YES" : "NO", ! olsr_lookup_mprs_set(&neigh->neighbor_main_addr) ? "YES" : "NO", neigh->willingness); From (spam-protected) Thu Nov 10 20:33:59 2005 From: (spam-protected) (Andreas Tønnesen) Date: Thu, 10 Nov 2005 19:33:59 +0000 Subject: [Olsr-cvs] olsrd-current/src ipc_frontend.c,1.26,1.27 Message-ID: Update of /cvsroot/olsrd/olsrd-current/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30602/src Modified Files: ipc_frontend.c Log Message: Removed warning Index: ipc_frontend.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/ipc_frontend.c,v retrieving revision 1.26 retrieving revision 1.27 diff -C2 -d -r1.26 -r1.27 *** ipc_frontend.c 27 Feb 2005 18:39:43 -0000 1.26 --- ipc_frontend.c 10 Nov 2005 19:33:57 -0000 1.27 *************** *** 132,136 **** ipc_accept(int fd) { ! int addrlen; struct sockaddr_in pin; char *addr; --- 132,136 ---- ipc_accept(int fd) { ! socklen_t addrlen; struct sockaddr_in pin; char *addr; From (spam-protected) Thu Nov 10 20:35:14 2005 From: (spam-protected) (Andreas Tønnesen) Date: Thu, 10 Nov 2005 19:35:14 +0000 Subject: [Olsr-cvs] olsrd-current/src build_msg.c,1.30,1.31 Message-ID: Update of /cvsroot/olsrd/olsrd-current/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30876/src Modified Files: build_msg.c Log Message: Removed warnings Index: build_msg.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/build_msg.c,v retrieving revision 1.30 retrieving revision 1.31 diff -C2 -d -r1.30 -r1.31 *** build_msg.c 30 May 2005 13:13:37 -0000 1.30 --- build_msg.c 10 Nov 2005 19:35:12 -0000 1.31 *************** *** 65,69 **** /* All these functions share this buffer */ ! static char msg_buffer[MAXMESSAGESIZE - OLSR_HEADERSIZE]; /* Prototypes for internal functions */ --- 65,69 ---- /* All these functions share this buffer */ ! static olsr_u8_t msg_buffer[MAXMESSAGESIZE - OLSR_HEADERSIZE]; /* Prototypes for internal functions */ From (spam-protected) Thu Nov 10 20:50:44 2005 From: (spam-protected) (Andreas Tønnesen) Date: Thu, 10 Nov 2005 19:50:44 +0000 Subject: [Olsr-cvs] olsrd-current/lib/tas/src glua.c, 1.1, 1.2 http.c, 1.4, 1.5 os_unix.c, 1.3, 1.4 plugin.c, 1.5, 1.6 Message-ID: Update of /cvsroot/olsrd/olsrd-current/lib/tas/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1981/src Modified Files: glua.c http.c os_unix.c plugin.c Log Message: Removed warnings from over-eager gcc 4.0. Thomas: These are just quick cast fixes, you want to do this dirrerently Index: glua.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/lib/tas/src/glua.c,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** glua.c 12 Apr 2005 17:17:25 -0000 1.1 --- glua.c 10 Nov 2005 19:50:42 -0000 1.2 *************** *** 158,162 **** for (;;) { ! if (code == 0 && (i == lspLen || strncmp(buff + i, "", 2) == 0)) { for (k = start; k < i; k++) --- 186,190 ---- } ! if (code == 1 && (i == lspLen || strncmp((char *)(buff + i), "?>", 2) == 0)) { for (k = start; k < i; k++) *************** *** 299,303 **** return luaL_error(lua, "cannot convert value to string"); ! writeBuff(&info->write[2], strConv, strlen(strConv)); lua_pop(lua, 1); --- 299,303 ---- return luaL_error(lua, "cannot convert value to string"); ! writeBuff(&info->write[2], (unsigned char *)strConv, strlen(strConv)); lua_pop(lua, 1); *************** *** 321,326 **** chomp(line, strlen(line)); ! writeBuff(&info->write[1], line, strlen(line)); ! writeBuff(&info->write[1], "\r\n", 2); freeMem(line); --- 321,326 ---- chomp(line, strlen(line)); ! writeBuff(&info->write[1], (unsigned char *)line, strlen(line)); ! writeBuff(&info->write[1], (unsigned char *)"\r\n", 2); freeMem(line); Index: http.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/lib/tas/src/http.c,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** http.c 29 May 2005 12:47:44 -0000 1.4 --- http.c 10 Nov 2005 19:50:42 -0000 1.5 *************** *** 861,865 **** static void writeBuffString(struct inOutBuff *write, const char *string) { ! writeBuff(write, string, strlen(string)); } --- 861,865 ---- static void writeBuffString(struct inOutBuff *write, const char *string) { ! writeBuff(write, (unsigned char *)string, strlen(string)); } *************** *** 945,949 **** if (i > start) ! writeBuff(buff, form + start, i - start); if (form[i] == 0) --- 945,949 ---- if (i > start) ! writeBuff(buff, (unsigned char *)(form + start), i - start); if (form[i] == 0) *************** *** 951,955 **** if (form[i + 1] == '%') ! writeBuff(buff, "%", 1); else if (form[i + 1] == 's') --- 951,955 ---- if (form[i + 1] == '%') ! writeBuff(buff, (unsigned char *)"%", 1); else if (form[i + 1] == 's') *************** *** 1123,1127 **** line = allocBuff(info, len); ! readBuff(&info->read, line, len); chomp(line, len); --- 1123,1127 ---- line = allocBuff(info, len); ! readBuff(&info->read, (unsigned char *)line, len); chomp(line, len); *************** *** 1246,1250 **** line = allocBuff(info, len); ! readBuff(&info->read, line, len); chomp(line, len); --- 1246,1250 ---- line = allocBuff(info, len); ! readBuff(&info->read, (unsigned char *)line, len); chomp(line, len); *************** *** 1381,1385 **** tmp2 = allocBuff(info, strlen(tmp) * 3 / 4 + 1); ! if (decBase64(tmp2, tmp) < 0) { error("base-64 decode failed\n"); --- 1381,1385 ---- tmp2 = allocBuff(info, strlen(tmp) * 3 / 4 + 1); ! if (decBase64((unsigned char *)tmp2, tmp) < 0) { error("base-64 decode failed\n"); Index: plugin.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/lib/tas/src/plugin.c,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** plugin.c 29 May 2005 12:47:44 -0000 1.5 --- plugin.c 10 Nov 2005 19:50:42 -0000 1.6 *************** *** 86,95 **** static int iterIndex; static struct interface *iterIntTab = NULL; static struct link_entry *iterLinkTab = NULL; static struct neighbor_entry *iterNeighTab = NULL; - static struct mid_entry *iterMidTab = NULL; static struct tc_entry *iterTcTab = NULL; - static struct hna_entry *iterHnaTab = NULL; static struct rt_entry *iterRouteTab = NULL; --- 86,99 ---- static int iterIndex; + #if 0 + /* not used */ static struct interface *iterIntTab = NULL; + static struct mid_entry *iterMidTab = NULL; + static struct hna_entry *iterHnaTab = NULL; + #endif + static struct link_entry *iterLinkTab = NULL; static struct neighbor_entry *iterNeighTab = NULL; static struct tc_entry *iterTcTab = NULL; static struct rt_entry *iterRouteTab = NULL; *************** *** 327,333 **** } ! static void parserFunc(unsigned char *mess, struct interface *inInt, union olsr_ip_addr *neighIntAddr) { union olsr_ip_addr *orig = (union olsr_ip_addr *)(mess + 4); unsigned short seqNo = (mess[ipAddrLen + 6] << 8) | mess[ipAddrLen + 7]; --- 331,338 ---- } ! static void parserFunc(union olsr_message *msg, struct interface *inInt, union olsr_ip_addr *neighIntAddr) { + char *mess = (char *)msg; union olsr_ip_addr *orig = (union olsr_ip_addr *)(mess + 4); unsigned short seqNo = (mess[ipAddrLen + 6] << 8) | mess[ipAddrLen + 7]; *************** *** 384,388 **** } ! olsr_forward_message((union olsr_message *)mess, orig, seqNo, inInt, neighIntAddr); } --- 389,393 ---- } ! olsr_forward_message(msg, orig, seqNo, inInt, neighIntAddr); } Index: os_unix.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/lib/tas/src/os_unix.c,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** os_unix.c 29 May 2005 12:47:44 -0000 1.3 --- os_unix.c 10 Nov 2005 19:50:42 -0000 1.4 *************** *** 498,502 **** { struct sockaddr sockAddr; ! int len; int sock; int flags; --- 498,502 ---- { struct sockaddr sockAddr; ! socklen_t len; int sock; int flags; From (spam-protected) Sat Nov 12 09:07:46 2005 From: (spam-protected) (Andreas Tønnesen) Date: Sat, 12 Nov 2005 08:07:46 +0000 Subject: [Olsr-cvs] olsrd-current/src/olsr_switch ohs_cmd.c,1.18,1.19 Message-ID: Update of /cvsroot/olsrd/olsrd-current/src/olsr_switch In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26058 Modified Files: ohs_cmd.c Log Message: Warning fix Index: ohs_cmd.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/olsr_switch/ohs_cmd.c,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -d -r1.18 -r1.19 *** ohs_cmd.c 23 Oct 2005 19:17:48 -0000 1.18 --- ohs_cmd.c 12 Nov 2005 08:07:43 -0000 1.19 *************** *** 550,558 **** static char cmd_line[500]; static int cmd_len = 0; - char c; char *args; char cmd_token[20]; int i; #if defined WIN32 unsigned long Read; INPUT_RECORD InRec; --- 550,558 ---- static char cmd_line[500]; static int cmd_len = 0; char *args; char cmd_token[20]; int i; #if defined WIN32 + char c; unsigned long Read; INPUT_RECORD InRec; From (spam-protected) Wed Nov 16 00:46:22 2005 From: (spam-protected) (Thomas Lopatic) Date: Tue, 15 Nov 2005 23:46:22 +0000 Subject: [Olsr-cvs] olsrd-current/src/cfgparser olsrd_conf.c,1.43,1.44 Message-ID: Update of /cvsroot/olsrd/olsrd-current/src/cfgparser In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29473/src/cfgparser Modified Files: olsrd_conf.c Log Message: Use HNA routing table with ETX. Support "" in TAS. Let users override the minimal HELLO validity time. Secure session cookies in TAS. Index: olsrd_conf.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/cfgparser/olsrd_conf.c,v retrieving revision 1.43 retrieving revision 1.44 diff -C2 -d -r1.43 -r1.44 *** olsrd_conf.c 23 Oct 2005 19:01:04 -0000 1.43 --- olsrd_conf.c 15 Nov 2005 23:46:20 -0000 1.44 *************** *** 310,313 **** --- 310,323 ---- /* HELLO interval */ + + if (io->hello_params.validity_time < 0.0) + { + if (cnf->lq_level == 0) + io->hello_params.validity_time = NEIGHB_HOLD_TIME; + + else + io->hello_params.validity_time = cnf->lq_wsize * io->hello_params.emission_interval; + } + if(io->hello_params.emission_interval < cnf->pollrate || io->hello_params.emission_interval > io->hello_params.validity_time) *************** *** 317,334 **** } - if (cnf->lq_level > 0) - { - float want = cnf->lq_wsize * io->hello_params.emission_interval; - - if (io->hello_params.validity_time < want) - { - io->hello_params.validity_time = want; - - fprintf(stderr, - "WARNING: %s HELLO validity time set to %.1f seconds!\n", - in->name, want); - } - } - /* TC interval */ if(io->tc_params.emission_interval < cnf->pollrate || --- 327,330 ---- *************** *** 496,500 **** io->hello_params.emission_interval = HELLO_INTERVAL; ! io->hello_params.validity_time = NEIGHB_HOLD_TIME; io->tc_params.emission_interval = TC_INTERVAL; io->tc_params.validity_time = TOP_HOLD_TIME; --- 492,496 ---- io->hello_params.emission_interval = HELLO_INTERVAL; ! io->hello_params.validity_time = -1.0; io->tc_params.emission_interval = TC_INTERVAL; io->tc_params.validity_time = TOP_HOLD_TIME; From (spam-protected) Wed Nov 16 00:46:22 2005 From: (spam-protected) (Thomas Lopatic) Date: Tue, 15 Nov 2005 23:46:22 +0000 Subject: [Olsr-cvs] olsrd-current/lib/tas/src glua.c, 1.2, 1.3 os_unix.c, 1.4, 1.5 Message-ID: Update of /cvsroot/olsrd/olsrd-current/lib/tas/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29473/lib/tas/src Modified Files: glua.c os_unix.c Log Message: Use HNA routing table with ETX. Support "" in TAS. Let users override the minimal HELLO validity time. Secure session cookies in TAS. Index: glua.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/lib/tas/src/glua.c,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** glua.c 10 Nov 2005 19:50:42 -0000 1.2 --- glua.c 15 Nov 2005 23:46:19 -0000 1.3 *************** *** 178,195 **** break; ! i += 5; ! start = i; ! code = 1; continue; } ! if (code == 1 && (i == lspLen || strncmp((char *)(buff + i), "?>", 2) == 0)) { for (k = start; k < i; k++) if (buff[k] != 13) fputc(buff[k], file); fputc('\n', file); --- 178,210 ---- break; ! if (buff[i + 5] == '=') ! { ! i += 6; ! code = 2; ! } ! else ! { ! i += 5; ! code = 1; ! } ! ! start = i; continue; } ! if (code > 0 && (i == lspLen || strncmp((char *)(buff + i), "?>", 2) == 0)) { + if (code > 1) + fprintf(file, "tas.write("); + for (k = start; k < i; k++) if (buff[k] != 13) fputc(buff[k], file); + if (code > 1) + fputc(')', file); + fputc('\n', file); Index: os_unix.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/lib/tas/src/os_unix.c,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** os_unix.c 10 Nov 2005 19:50:42 -0000 1.4 --- os_unix.c 15 Nov 2005 23:46:20 -0000 1.5 *************** *** 67,77 **** static int mainSocket; - // XXX - insecure - void getRandomBytes(unsigned char *buff, int len) { memset(buff, 0, len); ! buff[0] = (unsigned char)getpid(); } --- 67,101 ---- static int mainSocket; void getRandomBytes(unsigned char *buff, int len) { + int file; + int readLen; + memset(buff, 0, len); ! file = open("/dev/random", O_RDONLY); ! ! if (file < 0) ! { ! fprintf(stderr, "warning: cannot open /dev/random\n"); ! return; ! } ! ! while (len > 0) ! { ! readLen = read(file, buff, len); ! ! if (readLen < 0) ! { ! fprintf(stderr, "warning: cannot read from /dev/random\n"); ! close(file); ! return; ! } ! ! buff += readLen; ! len -= readLen; ! } ! ! close(file); } From (spam-protected) Wed Nov 16 00:46:22 2005 From: (spam-protected) (Thomas Lopatic) Date: Tue, 15 Nov 2005 23:46:22 +0000 Subject: [Olsr-cvs] olsrd-current/src lq_route.c,1.37,1.38 Message-ID: Update of /cvsroot/olsrd/olsrd-current/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29473/src Modified Files: lq_route.c Log Message: Use HNA routing table with ETX. Support "" in TAS. Let users override the minimal HELLO validity time. Secure session cookies in TAS. Index: lq_route.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/lq_route.c,v retrieving revision 1.37 retrieving revision 1.38 diff -C2 -d -r1.37 -r1.38 *** lq_route.c 23 Oct 2005 20:58:14 -0000 1.37 --- lq_route.c 15 Nov 2005 23:46:20 -0000 1.38 *************** *** 606,609 **** --- 606,613 ---- } + // save the old HNA routing table + + olsr_move_route_table(hna_routes, old_hna); + // add HNA routes - the set of unprocessed network nodes contains // all reachable network nodes *************** *** 672,676 **** // find the correct list ! head_rt = &routingtable[olsr_hashing(&hna->A_network_addr)]; // enqueue --- 676,680 ---- // find the correct list ! head_rt = &hna_routes[olsr_hashing(&hna->A_network_addr)]; // enqueue *************** *** 691,697 **** --- 695,703 ---- olsr_update_kernel_routes(); + olsr_update_kernel_hna_routes(); // free the saved routing table olsr_free_routing_table(old_routes); + olsr_free_routing_table(old_hna); } From (spam-protected) Thu Nov 17 00:55:56 2005 From: (spam-protected) (Thomas Lopatic) Date: Wed, 16 Nov 2005 23:55:56 +0000 Subject: [Olsr-cvs] olsrd-current/src lq_route.c, 1.38, 1.39 routing_table.c, 1.22, 1.23 routing_table.h, 1.16, 1.17 Message-ID: Update of /cvsroot/olsrd/olsrd-current/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3945/src Modified Files: lq_route.c routing_table.c routing_table.h Log Message: For HNA routes search the correct routing table, i.e. the HNA routing table, for duplicates. Index: lq_route.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/lq_route.c,v retrieving revision 1.38 retrieving revision 1.39 diff -C2 -d -r1.38 -r1.39 *** lq_route.c 15 Nov 2005 23:46:20 -0000 1.38 --- lq_route.c 16 Nov 2005 23:55:54 -0000 1.39 *************** *** 651,655 **** // we already have a route via a previous (better) node ! if (olsr_lookup_routing_table(&hna->A_network_addr) != NULL) continue; --- 651,655 ---- // we already have a route via a previous (better) node ! if (olsr_lookup_hna_routing_table(&hna->A_network_addr) != NULL) continue; Index: routing_table.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/routing_table.c,v retrieving revision 1.22 retrieving revision 1.23 diff -C2 -d -r1.22 -r1.23 *** routing_table.c 29 May 2005 12:47:45 -0000 1.22 --- routing_table.c 16 Nov 2005 23:55:54 -0000 1.23 *************** *** 134,139 **** --- 134,159 ---- } + /** + * Look up an entry in the HNA routing table. + * + * @param dst the address of the entry + * + * @return a pointer to a rt_entry struct + * representing the route entry. + */ + + struct rt_entry * + olsr_lookup_hna_routing_table(union olsr_ip_addr *dst) + { + struct rt_entry *walker; + olsr_u32_t hash = olsr_hashing(dst); + for (walker = hna_routes[hash].next; walker != &hna_routes[hash]; + walker = walker->next) + if (COMP_IP(&walker->rt_dst, dst)) + return walker; + return NULL; + } /** Index: routing_table.h =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/routing_table.h,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** routing_table.h 29 May 2005 12:47:45 -0000 1.16 --- routing_table.h 16 Nov 2005 23:55:54 -0000 1.17 *************** *** 113,116 **** --- 113,119 ---- olsr_lookup_routing_table(union olsr_ip_addr *); + struct rt_entry * + olsr_lookup_hna_routing_table(union olsr_ip_addr *dst); + void olsr_free_routing_table(struct rt_entry *); From (spam-protected) Thu Nov 17 02:58:54 2005 From: (spam-protected) (Thomas Lopatic) Date: Thu, 17 Nov 2005 01:58:54 +0000 Subject: [Olsr-cvs] olsrd-current/src/cfgparser olsrd_conf.c, 1.44, 1.45 oparse.y, 1.26, 1.27 oscan.lex, 1.17, 1.18 Message-ID: Update of /cvsroot/olsrd/olsrd-current/src/cfgparser In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3775/src/cfgparser Modified Files: olsrd_conf.c oparse.y oscan.lex Log Message: Added experimental LinkQualityFishEye configuration option, which enables us to shrink LQ TC intervals without swamping the network with LQ TCs. Look at create_lq_tc() in lq_packet.c. Index: oscan.lex =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/cfgparser/oscan.lex,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -d -r1.17 -r1.18 *** oscan.lex 20 Feb 2005 19:54:18 -0000 1.17 --- oscan.lex 17 Nov 2005 01:58:52 -0000 1.18 *************** *** 368,371 **** --- 368,376 ---- } + "LinkQualityFishEye" { + yylval = NULL; + return TOK_LQ_FISH; + } + "LinkQualityWinSize" { yylval = NULL; Index: olsrd_conf.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/cfgparser/olsrd_conf.c,v retrieving revision 1.44 retrieving revision 1.45 diff -C2 -d -r1.44 -r1.45 *** olsrd_conf.c 15 Nov 2005 23:46:20 -0000 1.44 --- olsrd_conf.c 17 Nov 2005 01:58:52 -0000 1.45 *************** *** 453,456 **** --- 453,457 ---- cnf->mpr_coverage = MPR_COVERAGE; cnf->lq_level = DEF_LQ_LEVEL; + cnf->lq_fish = DEF_LQ_FISH; cnf->lq_wsize = DEF_LQ_WSIZE; cnf->clear_screen = DEF_CLEAR_SCREEN; Index: oparse.y =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/cfgparser/oparse.y,v retrieving revision 1.26 retrieving revision 1.27 diff -C2 -d -r1.26 -r1.27 *** oparse.y 25 Feb 2005 16:03:19 -0000 1.26 --- oparse.y 17 Nov 2005 01:58:52 -0000 1.27 *************** *** 149,152 **** --- 149,153 ---- %token TOK_MPRCOVERAGE %token TOK_LQ_LEVEL + %token TOK_LQ_FISH %token TOK_LQ_WSIZE %token TOK_LQ_MULT *************** *** 199,202 **** --- 200,204 ---- | amprcoverage | alq_level + | alq_fish | alq_wsize | bclear_screen *************** *** 896,899 **** --- 898,909 ---- ; + alq_fish: TOK_LQ_FISH TOK_INTEGER + { + if(PARSER_DEBUG) printf("Link quality fish eye %d\n", $2->integer); + cnf->lq_fish = $2->integer; + free($2); + } + ; + alq_wsize: TOK_LQ_WSIZE TOK_INTEGER { From (spam-protected) Thu Nov 17 02:58:54 2005 From: (spam-protected) (Thomas Lopatic) Date: Thu, 17 Nov 2005 01:58:54 +0000 Subject: [Olsr-cvs] olsrd-current/src lq_packet.c, 1.18, 1.19 olsr_cfg.h, 1.25, 1.26 parser.c, 1.27, 1.28 Message-ID: Update of /cvsroot/olsrd/olsrd-current/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3775/src Modified Files: lq_packet.c olsr_cfg.h parser.c Log Message: Added experimental LinkQualityFishEye configuration option, which enables us to shrink LQ TC intervals without swamping the network with LQ TCs. Look at create_lq_tc() in lq_packet.c. Index: parser.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/parser.c,v retrieving revision 1.27 retrieving revision 1.28 diff -C2 -d -r1.27 -r1.28 *** parser.c 4 Jun 2005 15:13:53 -0000 1.27 --- parser.c 17 Nov 2005 01:58:52 -0000 1.28 *************** *** 242,246 **** { /* IPv4 */ ! if (m->v4.ttl <= 0) { OLSR_PRINTF(2, "Dropping packet type %d from neigh %s with TTL 0\n", --- 242,246 ---- { /* IPv4 */ ! if (m->v4.ttl <= 0 && olsr_cnf->lq_fish == 0) { OLSR_PRINTF(2, "Dropping packet type %d from neigh %s with TTL 0\n", *************** *** 253,257 **** { /* IPv6 */ ! if (m->v6.ttl <= 0) { OLSR_PRINTF(2, "Dropping packet type %d from %s with TTL 0\n", --- 253,257 ---- { /* IPv6 */ ! if (m->v6.ttl <= 0 && olsr_cnf->lq_fish == 0) { OLSR_PRINTF(2, "Dropping packet type %d from %s with TTL 0\n", Index: olsr_cfg.h =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/olsr_cfg.h,v retrieving revision 1.25 retrieving revision 1.26 diff -C2 -d -r1.25 -r1.26 *** olsr_cfg.h 30 May 2005 13:13:38 -0000 1.25 --- olsr_cfg.h 17 Nov 2005 01:58:52 -0000 1.26 *************** *** 55,58 **** --- 55,59 ---- #define DEF_USE_HYST OLSR_TRUE #define DEF_LQ_LEVEL 0 + #define DEF_LQ_FISH 0 #define DEF_LQ_WSIZE 10 #define DEF_CLEAR_SCREEN OLSR_FALSE *************** *** 207,210 **** --- 208,212 ---- olsr_u8_t lq_level; olsr_u32_t lq_wsize; + olsr_u8_t lq_fish; struct plugin_entry *plugins; struct hna4_entry *hna4_entries; Index: lq_packet.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/lq_packet.c,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -d -r1.18 -r1.19 *** lq_packet.c 23 Oct 2005 20:58:14 -0000 1.18 --- lq_packet.c 17 Nov 2005 01:58:51 -0000 1.19 *************** *** 150,153 **** --- 150,155 ---- struct neighbor_entry *walker; struct link_entry *link; + static int ttl_list[] = { MAX_TTL, 3, 2, 1, 2, 1, 1, 3, 2, 1, 2, 1, 1, 0 }; + static int ttl_index = 0; // remember that we have generated an LQ TC message; this is *************** *** 164,168 **** COPY_IP(&lq_tc->comm.orig, &main_addr); ! lq_tc->comm.ttl = MAX_TTL; lq_tc->comm.hops = 0; lq_tc->comm.seqno = get_msg_seqno(); --- 166,182 ---- COPY_IP(&lq_tc->comm.orig, &main_addr); ! if (olsr_cnf->lq_fish > 0) ! { ! if (ttl_list[ttl_index] == 0) ! ttl_index = 0; ! ! lq_tc->comm.ttl = ttl_list[ttl_index++]; ! ! OLSR_PRINTF(3, "Creating LQ TC with TTL %d.\n", lq_tc->comm.ttl); ! } ! ! else ! lq_tc->comm.ttl = MAX_TTL; ! lq_tc->comm.hops = 0; lq_tc->comm.seqno = get_msg_seqno(); From (spam-protected) Thu Nov 17 05:25:47 2005 From: (spam-protected) (Thomas Lopatic) Date: Thu, 17 Nov 2005 04:25:47 +0000 Subject: [Olsr-cvs] olsrd-current/src/cfgparser olsrd_conf.c, 1.45, 1.46 oparse.y, 1.27, 1.28 oscan.lex, 1.18, 1.19 Message-ID: Update of /cvsroot/olsrd/olsrd-current/src/cfgparser In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26679/src/cfgparser Modified Files: olsrd_conf.c oparse.y oscan.lex Log Message: Added experimental LinkQualityDijkstraLimit option, which prevents LQ TCs from nodes more than x1 hops away from us to trigger routing table recalculation using Dijkstra. Instead integrate these changes into the routing table every x2 seconds. This is to reduce CPU load. Triggering Dijkstra too often uses up a lot of CPU cycles. Index: oscan.lex =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/cfgparser/oscan.lex,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -d -r1.18 -r1.19 *** oscan.lex 17 Nov 2005 01:58:52 -0000 1.18 --- oscan.lex 17 Nov 2005 04:25:44 -0000 1.19 *************** *** 373,376 **** --- 373,381 ---- } + "LinkQualityDijkstraLimit" { + yylval = NULL; + return TOK_LQ_DLIMIT; + } + "LinkQualityWinSize" { yylval = NULL; Index: olsrd_conf.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/cfgparser/olsrd_conf.c,v retrieving revision 1.45 retrieving revision 1.46 diff -C2 -d -r1.45 -r1.46 *** olsrd_conf.c 17 Nov 2005 01:58:52 -0000 1.45 --- olsrd_conf.c 17 Nov 2005 04:25:44 -0000 1.46 *************** *** 454,457 **** --- 454,459 ---- cnf->lq_level = DEF_LQ_LEVEL; cnf->lq_fish = DEF_LQ_FISH; + cnf->lq_dlimit = DEF_LQ_DIJK_LIMIT; + cnf->lq_dinter = DEF_LQ_DIJK_INTER; cnf->lq_wsize = DEF_LQ_WSIZE; cnf->clear_screen = DEF_CLEAR_SCREEN; *************** *** 564,567 **** --- 566,573 ---- printf("LQ level : %d\n", cnf->lq_level); + printf("LQ fish eye : %d\n", cnf->lq_fish); + + printf("LQ Dijkstra limit: %d, %0.2f\n", cnf->lq_dlimit, cnf->lq_dinter); + printf("LQ window size : %d\n", cnf->lq_wsize); Index: oparse.y =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/cfgparser/oparse.y,v retrieving revision 1.27 retrieving revision 1.28 diff -C2 -d -r1.27 -r1.28 *** oparse.y 17 Nov 2005 01:58:52 -0000 1.27 --- oparse.y 17 Nov 2005 04:25:44 -0000 1.28 *************** *** 150,153 **** --- 150,154 ---- %token TOK_LQ_LEVEL %token TOK_LQ_FISH + %token TOK_LQ_DLIMIT %token TOK_LQ_WSIZE %token TOK_LQ_MULT *************** *** 201,204 **** --- 202,206 ---- | alq_level | alq_fish + | alq_dlimit | alq_wsize | bclear_screen *************** *** 906,909 **** --- 908,920 ---- ; + alq_dlimit: TOK_LQ_DLIMIT TOK_INTEGER TOK_FLOAT + { + if(PARSER_DEBUG) printf("Link quality dijkstra limit %d, %0.2f\n", $2->integer, $3->floating); + cnf->lq_dlimit = $2->integer; + cnf->lq_dinter = $3->floating; + free($2); + } + ; + alq_wsize: TOK_LQ_WSIZE TOK_INTEGER { From (spam-protected) Thu Nov 17 05:25:46 2005 From: (spam-protected) (Thomas Lopatic) Date: Thu, 17 Nov 2005 04:25:46 +0000 Subject: [Olsr-cvs] olsrd-current/src link_set.c, 1.61, 1.62 olsr.c, 1.46, 1.47 olsr_cfg.h, 1.26, 1.27 process_package.c, 1.34, 1.35 scheduler.c, 1.31, 1.32 tc_set.c, 1.22, 1.23 Message-ID: Update of /cvsroot/olsrd/olsrd-current/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26679/src Modified Files: link_set.c olsr.c olsr_cfg.h process_package.c scheduler.c tc_set.c Log Message: Added experimental LinkQualityDijkstraLimit option, which prevents LQ TCs from nodes more than x1 hops away from us to trigger routing table recalculation using Dijkstra. Instead integrate these changes into the routing table every x2 seconds. This is to reduce CPU load. Triggering Dijkstra too often uses up a lot of CPU cycles. Index: olsr_cfg.h =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/olsr_cfg.h,v retrieving revision 1.26 retrieving revision 1.27 diff -C2 -d -r1.26 -r1.27 *** olsr_cfg.h 17 Nov 2005 01:58:52 -0000 1.26 --- olsr_cfg.h 17 Nov 2005 04:25:44 -0000 1.27 *************** *** 56,59 **** --- 56,61 ---- #define DEF_LQ_LEVEL 0 #define DEF_LQ_FISH 0 + #define DEF_LQ_DIJK_LIMIT 255 + #define DEF_LQ_DIJK_INTER 0.0 #define DEF_LQ_WSIZE 10 #define DEF_CLEAR_SCREEN OLSR_FALSE *************** *** 209,212 **** --- 211,216 ---- olsr_u32_t lq_wsize; olsr_u8_t lq_fish; + olsr_u8_t lq_dlimit; + float lq_dinter; struct plugin_entry *plugins; struct hna4_entry *hna4_entries; Index: process_package.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/process_package.c,v retrieving revision 1.34 retrieving revision 1.35 diff -C2 -d -r1.34 -r1.35 *** process_package.c 11 Apr 2005 18:43:40 -0000 1.34 --- process_package.c 17 Nov 2005 04:25:44 -0000 1.35 *************** *** 129,134 **** link->saved_neigh_link_quality = link->neigh_link_quality; ! changes_neighborhood = OLSR_TRUE; ! changes_topology = OLSR_TRUE; // create a new ANSN --- 129,140 ---- link->saved_neigh_link_quality = link->neigh_link_quality; ! if (olsr_cnf->lq_dlimit > 0) ! { ! changes_neighborhood = OLSR_TRUE; ! changes_topology = OLSR_TRUE; ! } ! ! else ! OLSR_PRINTF(3, "Skipping Dijkstra (2)\n") // create a new ANSN *************** *** 646,651 **** walker->path_link_quality; ! changes_neighborhood = OLSR_TRUE; ! changes_topology = OLSR_TRUE; } } --- 652,663 ---- walker->path_link_quality; ! if (olsr_cnf->lq_dlimit > 0) ! { ! changes_neighborhood = OLSR_TRUE; ! changes_topology = OLSR_TRUE; ! } ! ! else ! OLSR_PRINTF(3, "Skipping Dijkstra (3)\n") } } Index: tc_set.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/tc_set.c,v retrieving revision 1.22 retrieving revision 1.23 diff -C2 -d -r1.22 -r1.23 *** tc_set.c 29 May 2005 12:47:46 -0000 1.22 --- tc_set.c 17 Nov 2005 04:25:44 -0000 1.23 *************** *** 304,308 **** existing_dst->link_quality; ! retval = 1; } --- 304,312 ---- existing_dst->link_quality; ! if (msg->hop_count <= olsr_cnf->lq_dlimit) ! retval = 1; ! ! else ! OLSR_PRINTF(3, "Skipping Dijkstra (4)\n") } *************** *** 321,325 **** existing_dst->inverse_link_quality; ! retval = 1; } } --- 325,333 ---- existing_dst->inverse_link_quality; ! if (msg->hop_count <= olsr_cnf->lq_dlimit) ! retval = 1; ! ! else ! OLSR_PRINTF(3, "Skipping Dijkstra (5)\n") } } Index: scheduler.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/scheduler.c,v retrieving revision 1.31 retrieving revision 1.32 diff -C2 -d -r1.31 -r1.32 *** scheduler.c 28 Oct 2005 18:39:33 -0000 1.31 --- scheduler.c 17 Nov 2005 04:25:44 -0000 1.32 *************** *** 65,68 **** --- 65,76 ---- + static void trigger_dijkstra(void *dummy) + { + OLSR_PRINTF(3, "Triggering Dijkstra\n"); + + changes_neighborhood = OLSR_TRUE; + changes_topology = OLSR_TRUE; + } + /** *Main scheduler event loop. Polls at every *************** *** 100,103 **** --- 108,114 ---- struct tms tms_buf; + if(olsr_cnf->lq_level > 1 && olsr_cnf->lq_dinter > 0.0) + olsr_register_scheduler_event(trigger_dijkstra, NULL, olsr_cnf->lq_dinter, 0, NULL); + pollrate = olsr_cnf->pollrate; interval_usec = (olsr_u32_t)(pollrate * 1000000); Index: link_set.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/link_set.c,v retrieving revision 1.61 retrieving revision 1.62 diff -C2 -d -r1.61 -r1.62 *** link_set.c 23 Oct 2005 20:58:14 -0000 1.61 --- link_set.c 17 Nov 2005 04:25:44 -0000 1.62 *************** *** 968,973 **** entry->saved_loss_link_quality = entry->loss_link_quality; ! changes_neighborhood = OLSR_TRUE; ! changes_topology = OLSR_TRUE; // create a new ANSN --- 968,979 ---- entry->saved_loss_link_quality = entry->loss_link_quality; ! if (olsr_cnf->lq_dlimit > 0) ! { ! changes_neighborhood = OLSR_TRUE; ! changes_topology = OLSR_TRUE; ! } ! ! else ! OLSR_PRINTF(3, "Skipping Dijkstra (1)\n") // create a new ANSN Index: olsr.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/olsr.c,v retrieving revision 1.46 retrieving revision 1.47 diff -C2 -d -r1.46 -r1.47 *** olsr.c 29 May 2005 12:47:45 -0000 1.46 --- olsr.c 17 Nov 2005 04:25:44 -0000 1.47 *************** *** 70,74 **** olsr_bool changes_hna; - /** * Process changes functions --- 70,73 ---- From (spam-protected) Sat Nov 19 09:30:47 2005 From: (spam-protected) (Andreas Tønnesen) Date: Sat, 19 Nov 2005 08:30:47 +0000 Subject: [Olsr-cvs] olsrd-current/lib/secure/src olsrd_secure.c, 1.15, 1.16 olsrd_secure.h, 1.5, 1.6 Message-ID: Update of /cvsroot/olsrd/olsrd-current/lib/secure/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2477/src Modified Files: olsrd_secure.c olsrd_secure.h Log Message: Fixes for timestamp issues. The plugin was not converted to the new clock_t timestam scheme Index: olsrd_secure.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/lib/secure/src/olsrd_secure.c,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** olsrd_secure.c 10 Nov 2005 19:25:37 -0000 1.15 --- olsrd_secure.c 19 Nov 2005 08:30:44 -0000 1.16 *************** *** 639,643 **** /* update validtime */ ! olsr_get_timestamp((olsr_u32_t) TIMESTAMP_HOLD_TIME*1000, &entry->valtime); return 1; --- 639,644 ---- /* update validtime */ ! ! entry->valtime = GET_TIMESTAMP(TIMESTAMP_HOLD_TIME * 1000); return 1; *************** *** 714,719 **** /* update validtime - not validated */ ! olsr_get_timestamp((olsr_u32_t) EXCHANGE_HOLD_TIME*1000, &entry->conftime); ! hash = olsr_hashing(new_host); --- 715,720 ---- /* update validtime - not validated */ ! entry->conftime = GET_TIMESTAMP(EXCHANGE_HOLD_TIME * 1000); ! hash = olsr_hashing(new_host); *************** *** 811,815 **** /* update validtime - validated entry */ ! olsr_get_timestamp((olsr_u32_t) TIMESTAMP_HOLD_TIME*1000, &entry->valtime); olsr_printf(1, "[ENC]%s registered with diff %d!\n", --- 812,816 ---- /* update validtime - validated entry */ ! entry->valtime = GET_TIMESTAMP(TIMESTAMP_HOLD_TIME * 1000); olsr_printf(1, "[ENC]%s registered with diff %d!\n", *************** *** 906,910 **** /* update validtime - validated entry */ ! olsr_get_timestamp((olsr_u32_t) TIMESTAMP_HOLD_TIME*1000, &entry->valtime); olsr_printf(1, "[ENC]%s registered with diff %d!\n", --- 907,911 ---- /* update validtime - validated entry */ ! entry->valtime = GET_TIMESTAMP(TIMESTAMP_HOLD_TIME * 1000); olsr_printf(1, "[ENC]%s registered with diff %d!\n", *************** *** 992,997 **** /* update validtime - not validated */ ! olsr_get_timestamp((olsr_u32_t) EXCHANGE_HOLD_TIME*1000, &entry->conftime); ! /* Build and send response */ --- 993,997 ---- /* update validtime - not validated */ ! entry->conftime = GET_TIMESTAMP(EXCHANGE_HOLD_TIME * 1000); /* Build and send response */ *************** *** 1259,1327 **** } - - /************************************************************* - * TOOLS DERIVED FROM OLSRD * - *************************************************************/ - - - /** - *Checks if a timer has times out. That means - *if it is smaller than present time. - *@param timer the timeval struct to evaluate - *@return positive if the timer has not timed out, - *0 if it matches with present time and negative - *if it is timed out. - */ - int - olsr_timed_out(struct timeval *timer) - { - return(timercmp(timer, &now, <)); - } - - - - /** - *Initiates a "timer", wich is a timeval structure, - *with the value given in time_value. - *@param time_value the value to initialize the timer with - *@param hold_timer the timer itself - *@return nada - */ - void - olsr_init_timer(olsr_u32_t time_value, struct timeval *hold_timer) - { - olsr_u16_t time_value_sec; - olsr_u16_t time_value_msec; - - time_value_sec = time_value/1000; - time_value_msec = time_value-(time_value_sec*1000); - - hold_timer->tv_sec = time_value_sec; - hold_timer->tv_usec = time_value_msec*1000; - } - - - - - - /** - *Generaties a timestamp a certain number of milliseconds - *into the future. - * - *@param time_value how many milliseconds from now - *@param hold_timer the timer itself - *@return nada - */ - void - olsr_get_timestamp(olsr_u32_t delay, struct timeval *hold_timer) - { - olsr_u16_t time_value_sec; - olsr_u16_t time_value_msec; - - time_value_sec = delay/1000; - time_value_msec= delay - (delay*1000); - - hold_timer->tv_sec = now.tv_sec + time_value_sec; - hold_timer->tv_usec = now.tv_usec + (time_value_msec*1000); - } - --- 1259,1260 ---- Index: olsrd_secure.h =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/lib/secure/src/olsrd_secure.h,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** olsrd_secure.h 29 May 2005 12:47:44 -0000 1.5 --- olsrd_secure.h 19 Nov 2005 08:30:45 -0000 1.6 *************** *** 79,84 **** olsr_u32_t challenge; olsr_u8_t validated; ! struct timeval valtime; /* Validity time */ ! struct timeval conftime; /* Reconfiguration time */ struct stamp *prev; struct stamp *next; --- 79,84 ---- olsr_u32_t challenge; olsr_u8_t validated; ! clock_t valtime; /* Validity time */ ! clock_t conftime; /* Reconfiguration time */ struct stamp *prev; struct stamp *next; *************** *** 157,169 **** read_key_from_file(char *); - void - olsr_get_timestamp(olsr_u32_t, struct timeval *); - - void - olsr_init_timer(olsr_u32_t, struct timeval *); - - int - olsr_timed_out(struct timeval *); - int secure_plugin_init(void); --- 157,160 ---- From (spam-protected) Sat Nov 19 09:37:25 2005 From: (spam-protected) (Andreas Tønnesen) Date: Sat, 19 Nov 2005 08:37:25 +0000 Subject: [Olsr-cvs] olsrd-current/lib/secure/src olsrd_secure.c,1.16,1.17 Message-ID: Update of /cvsroot/olsrd/olsrd-current/lib/secure/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3643/src Modified Files: olsrd_secure.c Log Message: x86_64 patch from Bernd Index: olsrd_secure.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/lib/secure/src/olsrd_secure.c,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** olsrd_secure.c 19 Nov 2005 08:30:44 -0000 1.16 --- olsrd_secure.c 19 Nov 2005 08:37:23 -0000 1.17 *************** *** 246,250 **** /* sockaddr_in6 is bigger than sockaddr !!!! */ struct sockaddr_storage from; ! size_t fromlen; int cc; union olsr_ip_addr from_addr; --- 246,250 ---- /* sockaddr_in6 is bigger than sockaddr !!!! */ struct sockaddr_storage from; ! socklen_t fromlen; int cc; union olsr_ip_addr from_addr; From (spam-protected) Sat Nov 19 09:39:28 2005 From: (spam-protected) (Andreas Tønnesen) Date: Sat, 19 Nov 2005 08:39:28 +0000 Subject: [Olsr-cvs] olsrd-current/lib/tas/src/lua llimits.h,1.1,1.2 Message-ID: Update of /cvsroot/olsrd/olsrd-current/lib/tas/src/lua In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3946/src/lua Modified Files: llimits.h Log Message: x86_64 patch from Bernd Index: llimits.h =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/lib/tas/src/lua/llimits.h,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** llimits.h 12 Apr 2005 17:17:26 -0000 1.1 --- llimits.h 19 Nov 2005 08:39:26 -0000 1.2 *************** *** 42,46 **** /* an unsigned integer to hold hash values */ ! typedef unsigned int lu_hash; /* its signed equivalent */ typedef int ls_hash; --- 42,46 ---- /* an unsigned integer to hold hash values */ ! typedef unsigned long int lu_hash; /* its signed equivalent */ typedef int ls_hash; From (spam-protected) Sat Nov 19 09:43:54 2005 From: (spam-protected) (Andreas Tønnesen) Date: Sat, 19 Nov 2005 08:43:54 +0000 Subject: [Olsr-cvs] olsrd-current/make Makefile.linux,1.3,1.4 Message-ID: Update of /cvsroot/olsrd/olsrd-current/make In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4639 Modified Files: Makefile.linux Log Message: x86_64 patch from Bernd Index: Makefile.linux =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/make/Makefile.linux,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** Makefile.linux 2 Jun 2005 14:41:59 -0000 1.3 --- Makefile.linux 19 Nov 2005 08:43:51 -0000 1.4 *************** *** 17,20 **** --- 17,27 ---- ifdef OLSRD_PLUGIN + GENERATE_PIC = true + endif + ifeq ($(shell arch),x86_64) + GENERATE_PIC = true + endif + + ifdef GENERATE_PIC CFLAGS += -fPIC LDFLAGS += -fPIC From (spam-protected) Sat Nov 19 09:49:46 2005 From: (spam-protected) (Andreas Tønnesen) Date: Sat, 19 Nov 2005 08:49:46 +0000 Subject: [Olsr-cvs] olsrd-current/src/cfgparser oscan.lex,1.19,1.20 Message-ID: Update of /cvsroot/olsrd/olsrd-current/src/cfgparser In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv5715/cfgparser Modified Files: oscan.lex Log Message: x86_64 patch from Bernd Index: oscan.lex =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/cfgparser/oscan.lex,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** oscan.lex 17 Nov 2005 04:25:44 -0000 1.19 --- oscan.lex 19 Nov 2005 08:49:44 -0000 1.20 *************** *** 82,86 **** { fprintf(stderr, "Cannot allocate %d bytes for an configuration token.\n", ! sizeof (struct conf_token)); exit(EXIT_FAILURE); } --- 82,86 ---- { fprintf(stderr, "Cannot allocate %d bytes for an configuration token.\n", ! (int) sizeof (struct conf_token)); exit(EXIT_FAILURE); } From (spam-protected) Sat Nov 19 09:49:46 2005 From: (spam-protected) (Andreas Tønnesen) Date: Sat, 19 Nov 2005 08:49:46 +0000 Subject: [Olsr-cvs] olsrd-current/src defs.h, 1.49, 1.50 parser.c, 1.28, 1.29 print_packet.c, 1.7, 1.8 Message-ID: Update of /cvsroot/olsrd/olsrd-current/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv5715 Modified Files: defs.h parser.c print_packet.c Log Message: x86_64 patch from Bernd Index: parser.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/parser.c,v retrieving revision 1.28 retrieving revision 1.29 diff -C2 -d -r1.28 -r1.29 *** parser.c 17 Nov 2005 01:58:52 -0000 1.28 --- parser.c 19 Nov 2005 08:49:44 -0000 1.29 *************** *** 344,348 **** /* sockaddr_in6 is bigger than sockaddr !!!! */ struct sockaddr_storage from; ! size_t fromlen; int cc; struct interface *olsr_in_if; --- 344,348 ---- /* sockaddr_in6 is bigger than sockaddr !!!! */ struct sockaddr_storage from; ! socklen_t fromlen; int cc; struct interface *olsr_in_if; *************** *** 432,436 **** /* sockaddr_in6 is bigger than sockaddr !!!! */ struct sockaddr_storage from; ! size_t fromlen; int cc; struct interface *olsr_in_if; --- 432,436 ---- /* sockaddr_in6 is bigger than sockaddr !!!! */ struct sockaddr_storage from; ! socklen_t fromlen; int cc; struct interface *olsr_in_if; Index: defs.h =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/defs.h,v retrieving revision 1.49 retrieving revision 1.50 diff -C2 -d -r1.49 -r1.50 *** defs.h 29 May 2005 12:47:45 -0000 1.49 --- defs.h 19 Nov 2005 08:49:44 -0000 1.50 *************** *** 98,102 **** according to system ticks returned by times(2) */ #define GET_TIMESTAMP(s1) \ ! now_times + ((s1) / system_tick_divider) #define TIMED_OUT(s1) \ --- 98,102 ---- according to system ticks returned by times(2) */ #define GET_TIMESTAMP(s1) \ ! (now_times + ((s1) / system_tick_divider)) #define TIMED_OUT(s1) \ Index: print_packet.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/print_packet.c,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** print_packet.c 28 May 2005 14:43:07 -0000 1.7 --- print_packet.c 19 Nov 2005 08:49:44 -0000 1.8 *************** *** 91,95 **** print_olsr_serialized_message(handle, msg); remainsize -= ntohs(msg->v4.olsr_msgsize); ! msg = (union olsr_message *)((int)msg + (int)ntohs(msg->v4.olsr_msgsize)); } --- 91,95 ---- print_olsr_serialized_message(handle, msg); remainsize -= ntohs(msg->v4.olsr_msgsize); ! msg = (union olsr_message *)((char *)msg + ntohs(msg->v4.olsr_msgsize)); } From (spam-protected) Sun Nov 20 21:45:35 2005 From: (spam-protected) (Andreas Tønnesen) Date: Sun, 20 Nov 2005 20:45:35 +0000 Subject: [Olsr-cvs] olsrd-current/src/olsr_switch ohs_cmd.c,1.19,1.20 Message-ID: Update of /cvsroot/olsrd/olsrd-current/src/olsr_switch In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2607 Modified Files: ohs_cmd.c Log Message: Fix for EOL detection from stdin. Patch from Bernd Index: ohs_cmd.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/olsr_switch/ohs_cmd.c,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** ohs_cmd.c 12 Nov 2005 08:07:43 -0000 1.19 --- ohs_cmd.c 20 Nov 2005 20:45:33 -0000 1.20 *************** *** 603,606 **** --- 603,610 ---- fgets(cmd_line, sizeof (cmd_line), stdin); + if(fgets(cmd_line, sizeof (cmd_line), stdin) == NULL) { + ohs_cmd_exit(NULL); + } + for (cmd_len = 0; cmd_line[cmd_len] != 0 && cmd_line[cmd_len] != '\n'; cmd_len++); From (spam-protected) Mon Nov 21 07:27:31 2005 From: (spam-protected) (Andreas Tønnesen) Date: Mon, 21 Nov 2005 06:27:31 +0000 Subject: [Olsr-cvs] olsrd-current Makefile,1.65,1.66 Message-ID: Update of /cvsroot/olsrd/olsrd-current In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24816 Modified Files: Makefile Log Message: Fix for the uberclean target. Will ot match the src/bsd directory Index: Makefile =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/Makefile,v retrieving revision 1.65 retrieving revision 1.66 diff -C2 -d -r1.65 -r1.66 *** Makefile 13 Jul 2005 21:45:50 -0000 1.65 --- Makefile 21 Nov 2005 06:27:29 -0000 1.66 *************** *** 77,82 **** uberclean: clean clean_libs ! -rm -f src/*[od~] src/linux/*[od~] src/unix/*[od~] src/win32/*[od~] ! -rm -f src/bsd/*[od~] $(MAKE) -C $(CFGDIR) uberclean $(MAKE) -C $(SWITCHDIR) clean --- 77,82 ---- uberclean: clean clean_libs ! -rm -f src/*.[od~] ! -rm -f src/linux/*.[od~] src/unix/*.[od~] src/win32/*.[od~] src/bsd/*.[od~] $(MAKE) -C $(CFGDIR) uberclean $(MAKE) -C $(SWITCHDIR) clean From (spam-protected) Tue Nov 22 11:12:32 2005 From: (spam-protected) (Thomas Lopatic) Date: Tue, 22 Nov 2005 10:12:32 +0000 Subject: [Olsr-cvs] olsrd-current/src/olsr_switch ohs_cmd.c,1.20,1.21 Message-ID: Update of /cvsroot/olsrd/olsrd-current/src/olsr_switch In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23206/src/olsr_switch Modified Files: ohs_cmd.c Log Message: Removed spurious fgets(). Index: ohs_cmd.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/olsr_switch/ohs_cmd.c,v retrieving revision 1.20 retrieving revision 1.21 diff -C2 -d -r1.20 -r1.21 *** ohs_cmd.c 20 Nov 2005 20:45:33 -0000 1.20 --- ohs_cmd.c 22 Nov 2005 10:12:30 -0000 1.21 *************** *** 601,606 **** else #else - fgets(cmd_line, sizeof (cmd_line), stdin); - if(fgets(cmd_line, sizeof (cmd_line), stdin) == NULL) { ohs_cmd_exit(NULL); --- 601,604 ---- From (spam-protected) Wed Nov 23 06:51:10 2005 From: (spam-protected) (Andreas Tønnesen) Date: Wed, 23 Nov 2005 05:51:10 +0000 Subject: [Olsr-cvs] olsrd-current README,1.15,1.16 Message-ID: Update of /cvsroot/olsrd/olsrd-current In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23602 Modified Files: README Log Message: Some initial 0.4.10 changes to the README file Index: README =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/README,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** README 2 Jun 2005 15:49:11 -0000 1.15 --- README 23 Nov 2005 05:51:07 -0000 1.16 *************** *** 1,5 **** +====================================================================+ ! | README - olsr.org OLSR daemon 0.4.8, 05.12.04 | +====================================================================+ --- 1,5 ---- +====================================================================+ ! | README - olsr.org OLSR daemon 0.4.10, 23.11.05 | +====================================================================+ *************** *** 44,58 **** routing protocol. The protocol is documented in RFC3626. The website of olsrd is http://www.olsr.org - Olsrd started out as part of the master thesis project for Andreas T�nnesen - at UniK University Graduate Center in Norway. This master thesis is now - finished(it is available for download at the olsrd website) but the olsrd - project moves on. Initially olsrd only compiled for GNU/Linux systems. - Then Thomas Lopatic joined up with the project in aug. 04 and he has seen - to it that olsrd now, also compiles on MS-Windows, Mac OSX and FreeBSD. Olsrd is designed to be a modular an extensible implementation. It features a plugin interface, allowing for developers to extend OLSR operation without interfering with the core code. It also features a experimental link quality ! routing scheme, by Thomas and people at the c-base in Berlin. To ask questions or make comments, join up with the mailing lists: --- 44,52 ---- routing protocol. The protocol is documented in RFC3626. The website of olsrd is http://www.olsr.org Olsrd is designed to be a modular an extensible implementation. It features a plugin interface, allowing for developers to extend OLSR operation without interfering with the core code. It also features a experimental link quality ! routing scheme. To ask questions or make comments, join up with the mailing lists: *************** *** 64,68 **** Olsrd source or binaries can be downloaded from olsr.org. CVS is available ! for the brave ;) --- 58,62 ---- Olsrd source or binaries can be downloaded from olsr.org. CVS is available ! for the cutting edge features ;-) *************** *** 80,84 **** compliant in that it will inter-operate with other RFC3626 implementations. Internally there are a few things that are solved differently that proposed ! in the RFC. Check out the "Conclusions" section of my master thesis for details. --- 74,80 ---- compliant in that it will inter-operate with other RFC3626 implementations. Internally there are a few things that are solved differently that proposed ! in the RFC. Check out the "Conclusions" section of the "Implementing And ! Extending The Optimized Link State routing Protocol" thesis available at ! olsr.org. *************** *** 96,102 **** * Users are free to implement olsrd plugins and license them under whatever terms they like. ! * If you, unlike yours truly, don't love C, the plugins can be written in ! any language that can be compiled as a dynamic library. Linux even allows ! scripts! * No need for people with extended OLSR versions to rely on heavy patching to maintain functionality when new olsrd versions are released. --- 92,97 ---- * Users are free to implement olsrd plugins and license them under whatever terms they like. ! * The plugins can be written in any language that can be compiled as ! a dynamic library. Linux even allows scripts! * No need for people with extended OLSR versions to rely on heavy patching to maintain functionality when new olsrd versions are released. *************** *** 119,122 **** --- 114,126 ---- Plugins that are part of this release(can be found in the lib/ directory): + - Tiny Application Server(TAS). + + - HttpInfo. This plugin implements a simple HTTP server that serves dynamic + pages with lots of information about the running olsrd process. + + - Mini. + + - Nameservice. + - Dynamic Internet gateway. A plugin that dynamically adds and removes Internet HNA transmissions based on if there exists a default gateway to Internet *************** *** 133,138 **** - Power plugin. A plugin that uses OLSRs MPR flooding to spread information ! about the power status of nodes. Meant as an example plugin to get coders ! started. --- 137,142 ---- - Power plugin. A plugin that uses OLSRs MPR flooding to spread information ! about the power status of nodes. Meant as an example plugin for code ! reference only. *************** *** 150,167 **** ================== - We suspect that in the previous version 0.4.7 OLSR traffic, in - particular HELLO messages, is more prone to packet loss than data - traffic. We think so, because the OLSR people of Vienna have excellent - links but link detection reports links as broken very often. This - problem exists in 0.4.7. We think that the reason for this is that in - multi-interface configurations olsrd 0.4.7 sends HELLO messages via - all interfaces at the same time without any jitter, which probably - results in interference, as HELLO messages from different interfaces - "collide". 0.4.8 should solve this problem, as we now have - per-interface jitter when sending HELLO messages. So collisions - between HELLO messages of different interfaces should be significantly - reduced. So, if you have a multi-interface configuration, too, please - let us know if you observe anything unusual. We'll also keep - investigating this problem with the Vienna guys. =============== --- 154,157 ---- *************** *** 169,180 **** =============== ! As the 0.4.8 release contains huge amounts of new code, the releases up to 0.5 ! will focus much on bug fixing. If relatively serious bugs are found new releases ! will be made fixing thees issues. ! Asides from that there will be some focus on redesigning the IPC interface, and ! hopefully we will end up with a neat platform independent GUI front-end to ! work over this new IPC interface. ! IPv6 support for Windows, FreeBSD and OSX will also be an issue. ! ---------------------------------------------------------------------- --- 159,165 ---- =============== ! Future releases of the 0.4 series will be maintainance releases focused ! on bugfixing. Work will soon begin on a 0.5 series where we will focus ! much more on new ideas. 0.4 and 0.5 might coexist for some time. ---------------------------------------------------------------------- *************** *** 186,192 **** ======================= ! Olsrd is implemented in pure C with very few dependencies. The 0.4.8 ! release has removed the pthread dependency making olsrd even more ! portable! Olsrd is known to run on various hardware like: * x86 - your regular PC * PPC - Macintosh hardware --- 171,176 ---- ======================= ! Olsrd is implemented in pure C with very few dependencies. Olsrd is ! known to run on various hardware like: * x86 - your regular PC * PPC - Macintosh hardware *************** *** 216,220 **** ------------------------------------------------------------ olsrd +/+ +/+ +/+ +/+ +/+ ? ! olsr_switch +/+ +/? +/+ +/+ +/+ ? ------------------------------------------------------------ PLUGINS --- 200,204 ---- ------------------------------------------------------------ olsrd +/+ +/+ +/+ +/+ +/+ ? ! olsr_switch +/+ +/+ +/+ +/+ +/+ ? ------------------------------------------------------------ PLUGINS *************** *** 238,244 **** ================= ! A GUI front end for GNU/Linux using GTK is available in the gui/ directory. ! this implementation is really no longer supported, but it should work with ! 0.4.8 except that it will not show correct configuration parameters. There currently is, however, a native MFC-based Windows GUI. Unlike --- 222,228 ---- ================= ! A GUI front end for GNU/Linux using GTK is available in the gui/ ! directory. This implementation is no longer supported, and might ! not work any more. It will be completly removed in a future release. There currently is, however, a native MFC-based Windows GUI. Unlike *************** *** 333,353 **** ========= ! To build olsrd you need to have all the regular development tools installed. ! This includes gcc, make, glibc, makedep etc. ! To install to a directory different from /(/etc, /usr/bin) use INSTALL_PREFIX=targetdir ! To use other compilers set CC=yourcompiler To build: ! make OS=linux To install(as root): make install To delete object files run: make clean ! ! Before running olsrd you must edit the default configuration file /etc/olsrd.conf ! adding at least what interfaces olsrd is to run on. Options in the config file can ! also be overridden by command line options. See the manual pages olsrd(8) and ! olsrd.conf(5) for details. The binary is named 'olsrd' and is installed in (PREFIX)/usr/sbin. You must have root privileges to run olsrd! --- 317,338 ---- ========= ! To build olsrd you need to have all the regular development tools ! installed. This includes gcc, make, glibc, makedep etc. ! To install to a directory different from /(/etc, /usr/bin) use ! INSTALL_PREFIX=targetdir. To use other compilers set CC=yourcompiler. To build: ! make To install(as root): make install To delete object files run: make clean + Optionally, to clean all generated files: + make uberclean ! Before running olsrd you must edit the default configuration file ! /etc/olsrd.conf adding at least what interfaces olsrd is to run on. ! Options in the config file can also be overridden by command line ! options. See the manual pages olsrd(8) and olsrd.conf(5) for details. The binary is named 'olsrd' and is installed in (PREFIX)/usr/sbin. You must have root privileges to run olsrd! *************** *** 355,360 **** olsrd ! If debug level is set to 0 olsrd will detach and run in the background, if not ! it will keep running in your shell. =========== --- 340,345 ---- olsrd ! If debug level is set to 0 olsrd will detach and run in the background, ! if not it will keep running in your shell. =========== *************** *** 368,372 **** and Mingw32. Simply use ! make OS=win32 to build the olsrd executable. Building the dot_draw plugin works --- 353,357 ---- and Mingw32. Simply use ! make to build the olsrd executable. Building the dot_draw plugin works *************** *** 426,440 **** ! =========== ! * FREEBSD ! =========== ! The FreeBSD version is an initial port. It has not been extensively ! tested beyond "doesn't core dump and it looks like it adds routes". In ! order to build it, you need GNU make. Then use ! gmake OS=fbsd ! to build the olsrd executable. Then say gmake install --- 411,427 ---- ! ========================= ! * FREEBSD/NETBSD/OPENBSD ! ========================= ! The FreeBSD port should be relativley stable at this point. ! The OpenBSD and NetBSD versions are pretty much untested. They have ! not been extensively tested beyond "doesn't core dump and it looks ! like it adds routes". In order to build it, you need GNU make. Then ! use: ! gmake ! to build the olsrd executable. Then do: gmake install *************** *** 450,457 **** The OS X port is a direct descendant of the FreeBSD port. So, the same limitations with respect to testing and maturity apply. Building and ! installing works in the same was as on FreeBSD, except that you have ! to use "osx" instead of "fbsd", as in ! ! gmake OS=osx --- 437,441 ---- The OS X port is a direct descendant of the FreeBSD port. So, the same limitations with respect to testing and maturity apply. Building and ! installing works in the same was as on FreeBSD. From (spam-protected) Wed Nov 23 06:54:06 2005 From: (spam-protected) (Andreas Tønnesen) Date: Wed, 23 Nov 2005 05:54:06 +0000 Subject: [Olsr-cvs] olsrd-current CHANGELOG,1.51,1.52 Message-ID: Update of /cvsroot/olsrd/olsrd-current In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24139 Modified Files: CHANGELOG Log Message: Added buildsystem info in CHANGELOG Index: CHANGELOG =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/CHANGELOG,v retrieving revision 1.51 retrieving revision 1.52 diff -C2 -d -r1.51 -r1.52 *** CHANGELOG 28 Oct 2005 19:21:32 -0000 1.51 --- CHANGELOG 23 Nov 2005 05:54:03 -0000 1.52 *************** *** 17,21 **** olsrd now also compiles on OpenBSD systems. Thanks a lot to Holger ! Mauermann for the patches! Use 'make OS=obsd' to build. IP ADDRESS VALIDATION --- 17,26 ---- olsrd now also compiles on OpenBSD systems. Thanks a lot to Holger ! Mauermann for the patches! ! ! BUILDSYSTEM REWRITE ! ! Bruno has rewritten the make system. OS detection is now done ! automagically and the general design is much improved. IP ADDRESS VALIDATION From (spam-protected) Tue Nov 29 19:38:00 2005 From: (spam-protected) (Andreas Tønnesen) Date: Tue, 29 Nov 2005 18:38:00 +0000 Subject: [Olsr-cvs] olsrd-current/src lq_route.c, 1.39, 1.40 lq_mpr.c, 1.9, 1.10 neighbor_table.c, 1.28, 1.29 Message-ID: Update of /cvsroot/olsrd/olsrd-current/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22188/src Modified Files: lq_route.c lq_mpr.c neighbor_table.c Log Message: Added checks for NULL returned from get_best_link_to_neighbor in the LQ code Index: lq_route.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/lq_route.c,v retrieving revision 1.39 retrieving revision 1.40 diff -C2 -d -r1.39 -r1.40 *** lq_route.c 16 Nov 2005 23:55:54 -0000 1.39 --- lq_route.c 29 Nov 2005 18:37:58 -0000 1.40 *************** *** 427,430 **** --- 427,433 ---- link = get_best_link_to_neighbor(&neigh->neighbor_main_addr); + if(!link) + continue; + if (link->loss_link_quality2 >= MIN_LINK_QUALITY && link->neigh_link_quality2 >= MIN_LINK_QUALITY) Index: lq_mpr.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/lq_mpr.c,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** lq_mpr.c 16 Feb 2005 14:44:43 -0000 1.9 --- lq_mpr.c 29 Nov 2005 18:37:58 -0000 1.10 *************** *** 108,111 **** --- 108,114 ---- link = get_best_link_to_neighbor(&neigh->neighbor_main_addr); + if(!link) + continue; + best = link->loss_link_quality * link->neigh_link_quality; Index: neighbor_table.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/neighbor_table.c,v retrieving revision 1.28 retrieving revision 1.29 diff -C2 -d -r1.28 -r1.29 *** neighbor_table.c 29 May 2005 12:47:45 -0000 1.28 --- neighbor_table.c 29 Nov 2005 18:37:58 -0000 1.29 *************** *** 501,506 **** struct link_entry *link = get_best_link_to_neighbor(&neigh->neighbor_main_addr); ! double best_lq = link->neigh_link_quality; ! double inv_best_lq = link->loss_link_quality; OLSR_PRINTF(1, fstr, olsr_ip_to_string(&neigh->neighbor_main_addr), --- 501,511 ---- struct link_entry *link = get_best_link_to_neighbor(&neigh->neighbor_main_addr); ! double best_lq, inv_best_lq; ! ! if(!link) ! continue; ! ! best_lq = link->neigh_link_quality; ! inv_best_lq = link->loss_link_quality; OLSR_PRINTF(1, fstr, olsr_ip_to_string(&neigh->neighbor_main_addr), From (spam-protected) Tue Nov 29 19:38:42 2005 From: (spam-protected) (Andreas Tønnesen) Date: Tue, 29 Nov 2005 18:38:42 +0000 Subject: [Olsr-cvs] olsrd-current/src process_package.c,1.35,1.36 Message-ID: Update of /cvsroot/olsrd/olsrd-current/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22397 Modified Files: process_package.c Log Message: Added checks for NULL returned from get_best_link_to_neighbor in the LQ code Index: process_package.c =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/src/process_package.c,v retrieving revision 1.35 retrieving revision 1.36 diff -C2 -d -r1.35 -r1.36 *** process_package.c 17 Nov 2005 04:25:44 -0000 1.35 --- process_package.c 29 Nov 2005 18:38:40 -0000 1.36 *************** *** 595,598 **** --- 595,601 ---- link = get_best_link_to_neighbor(&neighbor->neighbor_main_addr); + if(!link) + continue; + // loop through the one-hop neighbors that see this // two hop neighbour From (spam-protected) Tue Nov 29 20:10:02 2005 From: (spam-protected) (Andreas Tønnesen) Date: Tue, 29 Nov 2005 19:10:02 +0000 Subject: [Olsr-cvs] olsrd-current CHANGELOG,1.52,1.53 Message-ID: Update of /cvsroot/olsrd/olsrd-current In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30827 Modified Files: CHANGELOG Log Message: Added bugfix comment Index: CHANGELOG =================================================================== RCS file: /cvsroot/olsrd/olsrd-current/CHANGELOG,v retrieving revision 1.52 retrieving revision 1.53 diff -C2 -d -r1.52 -r1.53 *** CHANGELOG 23 Nov 2005 05:54:03 -0000 1.52 --- CHANGELOG 29 Nov 2005 19:09:59 -0000 1.53 *************** *** 59,62 **** --- 59,64 ---- the change. - Fixed return value check on times(2) calls in the scheduler + - Fixed bug(s) that could cause crash when an interface was brought + down while olsrd was running. 0.4.9 ---------------------------------------------------------------------