-
Notifications
You must be signed in to change notification settings - Fork 65
/
CHANGELOG
4229 lines (3631 loc) · 181 KB
/
CHANGELOG
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
0.9.8 -------------------------------------------------------------------
Fabrice Fontaine (1):
Make ldconfig configurable
Ferry Huberts (63):
Update version after branch of v0.9.7
Update version after release of v0.9.7
info: java: upgrade workspace
info: java: upgrade gradle wrapper
info: java: upgrade workspace
info: java: use latest jackson bundles
windows: fix the 64 bit builds on the latest mingw
pud: wireformat: java: build for Java 1.8
info: java: upgrade gradle wrapper
pud: fix the build against libgpsd 3.18
all: fix suppress string termination warnings
Merge branch 'release-0.9.7'
files: fix a shebang
files: use explicit paths for plugins
bmf: tighten up README
dotdraw: fix a typo
dotdraw: remove a duplicate file
dyngw: tighten up README
httpinfo: tighten up README
info: tighten up README
info: java: add install/uninstall targets
info: java: comment out maven repository artifacts
mdns: rename readme file
nameservice: fixup some text
p2pd: rename readme file
poprouting: tighten up README
pud: fix permissions of pud.odt document
pud: rename readme file
pud: nmealib: rename readme file
pud: wireformat-java: rename readme file
pud: wireformat-java: update the readme file
pud: wireformat: java: fix JDK detection
quagga: tighten up README
secure: tighten up README
sgwdynspeed: rename readme file
watchdog: tighten up README
arprefresh: install extra (documention) files
bmf: install extra (documention) files
dotdraw: install extra (documention) files
dyngw: install extra (documention) files
dyngw_plain: install extra (documention) files
httpinfo: install extra (documention) files
info: install extra (documention) files
jsoninfo: install extra (documention) files
mdns: install extra (documention) files
mini: install extra (documention) files
nameservice: install extra (documention) files
netjson: install extra (documention) files
p2pd: install extra (documention) files
pgraph: install extra (documention) files
poprouting: install extra (documention) files
pud: install extra (documention) files
quagga: install extra (documention) files
secure: install extra (documention) files
sgwdynspeed: install extra (documention) files
txtinfo: install extra (documention) files
watchdog: install extra (documention) files
olsrd: install extra (documentation) files
build: add NORPATH option
redhat: completely rewritten RPM spec file and generation
gradle: upgrade wrapper
Branch v0.9.8
Release v0.9.8
pmelange (1):
README-Debian-package: Update build instructions
0.9.7 -------------------------------------------------------------------
Christoph Loesch (1):
interfaces: add 'silent' mode
Ferry Huberts (52):
Update version after branch of v0.9.6
Merge branch 'release-0.9.6'
info: java: upgrade gradle wrapper
info: automatically detect whether the reply should have HTTP headers
Merge branch 'release-0.9.6'
Merge branch 'release-0.9.6'
info: java: gradle: upgrade wrapper
info: java: update workspace
info: java: update jackson bundles
info: java: gradle: upgrade wrapper
info: java: gradle: upgrade wrapper
pud: only check gpsd status; no clear of info on bad fix or invalid signal
link_set: fix typo in f8d4e24
Merge branch 'release-0.9.6'
Update version after release of v0.9.6.2
Merge branch 'release-0.9.6'
info: java: upgrade gradle wrapper
Merge pull request #28 from stspdotname/missing-olsr-random-include
Merge pull request #29 from stspdotname/detect-wifi-on-bsd
Merge pull request #30 from stspdotname/route-deletion-needs-netmask
Merge pull request #26 from neeels/segfault_cleanup
Merge pull request #25 from neeels/master
Merge pull request #34 from stspdotname/rtm-delete-flags
Merge pull request #36 from stspdotname/rtm-delete-flags-v6
Merge pull request #35 from stspdotname/icmp6-rediraccept
Merge pull request #31 from stspdotname/add-ipv6-routes-correctly
info: java: fix tests by letting mock bind to localhost
Merge pull request #37 from stspdotname/bcast-addr-len-and-type
Merge pull request #32 from stspdotname/fix-sendto-ipv4
info: java: upgrade workspace
info: java: upgrade gradle wrapper
info: java: upgrade gradle wrapper
info: java: use Java 1.8
hashing: fix implicit fall-through warning on gcc 7
all: link with -lm where <math.h> is included.
nameservice: fix potential null pointer dereference warnings on gcc 7
olsr_spf: fix potential null pointer dereference warnings on gcc 7
src: fix format truncation errors on gcc 7
process_routes: fix potential null pointer dereference warnings on gcc 7
info: java: upgrade gradle wrapper
info: fix the previous commit: windows doesn't support MSG_DONTWAIT
Merge pull request #49 from wiedi/osx-clock-10.12
info.java: remove date and hosts fields.
info: java: upgrade gradle wrapper
all: ensure timers are set to NULL after calling olsr_stop_timer
httpinfo: ensure timers are set to NULL after calling olsr_stop_timer
dyn_gw: fix GCC 8 compilation problems
secure: fix GCC 8 compilation problems
poprouting: format code
poprouting: fix memory leak in isCommand
Branch v0.9.7
Release v0.9.7
Gabriel (1):
Poprouting plugin for OLSRd (#53)
Henning Rogge (1):
info: do not block when sending data
Neels Hofmeyr (2):
fix segfault when printing "You must be root"
fix: don't attempt to cleanup uninitialized multiGwTunnels
Reiner Herrmann (2):
all: make sure all make filelists are sorted
all: remove build_host and build_date to enable reproducible building
Sebastian Wiedenroth (1):
mach: clock_gettime and friends appeared in Mac OSX 10.12
Stefan Sperling (9):
Add a missing include for olsr_random() on BSD.
Implement a simpler way of detecting wifi interfaces on BSD.
Fix route deletion on BSD.
Use correct RTM flags while deleting a route on BSD.
Do not toggle net.inet6.icmp6.rediraccept on OpenBSD.
Use correct RTM flags while deleting an IPv6 route on BSD.
Fix adding IPv6 routes on BSD.
Fix initialization of a struct sockaddr_in.
Fix olsr_sendto() for IPv4 on BSD.
iwanovich (1):
routing: remove rt_entry.rt_best pointer when rt_path is deleted (#61)
pocki80 (1):
correctly report silent mode on olsrd startup summary
0.9.6.2 -------------------------------------------------------------------
Ferry Huberts (2):
link_set: fix typo in f8d4e24
Release v0.9.6.2
Henning Rogge (1):
Update version after release of v0.9.6.1
0.9.6.1 -------------------------------------------------------------------
Ferry Huberts (6):
changelog: fixup
info: java: upgrade gradle wrapper
info: automatically detect whether the reply should have HTTP headers
lq_packet: make the hello link order a define
hello reception: use link status ordering
hello reception: only remove UNSPEC duplicates
Henning Rogge (2):
Update version after release of v0.9.6
Release v0.9.6.1
Iwan G. Flameling (2):
lq_packet: do not report duplicate neighbours in HELLO messages
hello reception: remove duplicate neighbors
0.9.6 -------------------------------------------------------------------
* The versions of the following plugins have changed:
- jsoninfo : 0.0 --> 1.1
- nameservice : 0.3 --> 0.4
- netjson : 1.0 --> 1.1
- pud : 2.0.0 --> 3.0.0 (including its extra libraries)
- txtinfo : 0.1 --> 1.1
* All info plugins (jsoninfo, netjson and txtinfo) now support a number of
request prefixes:
- /http : forces output WITH http headers, temporarily overriding the
configured "httpheaders" value.
- /plain: forces output WITHOUT http headers, temporarily overriding the
configured "httpheaders" value.
These prefixes have to be at the start of the request string, can occur
only there, and can occur only once.
Bastian Bittorf (1):
logging: show interface name during blocked socket error
Ferry Huberts (79):
Update version after branch of v0.9.5
changelog: adjust to put notes on top
release: adjust script to create multiple tar files
Merge branch 'release-0.9.5'
mach: add wrapper for clock_gettime
sgw: fix interface monitor for single-sgw mode
Merge branch 'release-0.9.5'
txtinfo: do not use http headers by default
info: fix json Content-Type header
Merge branch 'release-0.9.5'
main: improve EXECINFO include handling a bit
Merge branch 'release-0.9.5'
main: blacklist UCLIBC for OLSR_HAVE_EXECINFO_H
Merge branch 'release-0.9.5'
info: java: upgrade gradle wrapper
info: ensure the request is initially empty
info: rework HTTP request detection and request sanitation
info: send everything on empty requests
info: drain the request when there are too many requests in flight
info: trivial comment fix
info: trival debug output fix
info: improve readability of the 'empty request' check
info: protect stripEOLs against invalid input and zero length
info: protect skipMultipleSlashes against invalid input and zero length
info: protect skipLeadingWhitespace against invalid input and zero length
info: protect stripTrailingSlashes against invalid input and zero length
info: protect cutAtFirstEOL against invalid input and zero length
info: rename stripEOLs to stripTrailingWhitespace
info: be explicit about adding headers
info: fix a comment and add a comment
info: read the request as early as possible
info: sanitise the request right after it's been received
info: introduce command prefixes '/http' and '/plain'
conf: clear allocated default config before filling it.
conf: ensure the correct configuration file is stored in the configuration
conf: calculate the checksum over the effective configuration
main: save argc and argv for later use
jsoninfo: always output the configuration checksum
jsoninfo: add cli arguments to the config object
info: fix levels of a few debug messages
info: move a comment
info: add a comment about the size of the receive buffer
info: fix drain_request to not block
info: allow a small delay between connection accept and request arrival
info: do not block when receiving the request
info: return 'REQUEST TIMEOUT' when receiving the request did not work
info: release changed java OSGi bundles
info: add sanitation of the configuration
info: add request timeout configuration parameter
changelog: add a note about the '/http' and '/plain' request prefixes
info: update java dependency bundles
doc: upgrade doxygen configuration
doc: minor adjustment of the makefile
doc: fix warnings
doc: move pdf generation into new doc-pdf make target
gui: clean-ups
make: remove -Wmissing-include-dirs
files: get rid of net-tools usage
files: update configuration generation script
Merge pull request #12 from booo/sighup-interval
Merge pull request #14 from bittorf/master
cfgparser: use correct SHA256_DIGEST_LENGTH
cfgparser: pull in openssl sha256 code to avoid linking to it
cfgparser: use superfasthash for the configuration checksum
logging: work around bogus Coverity warning
Merge pull request #16 from SvenRoederer/rename_sighup-interval
Merge pull request #18 from SvenRoederer/olsr-nameservice-version
nameservice: fix plugin versions
nameservice: fix typos of filewrite-interval plugin parameter
pud: bump version
jsoninfo: bump version
netjson: bump version
txtinfo: bump version
changelog: add a remark about updated plugin versions
lq_packet: change link status ordering in hello messages
Branch v0.9.6
changelog: minor layout fixes
release: minor improvements to the release script
release: insert changelog just before the marker of the previous release
Henning Rogge (2):
Update version after release of v0.9.5
Release v0.9.6
Philipp Borgers (1):
nameservice: add new sighup-interval parameter
Sebastian Wiedenroth (1):
fix timing issues on systems where RAND_MAX is not INT32_MAX
Sven Roederer (2):
nameservice: rename parameter "sighup_interval" to "filewrite_interval"
nameservice: bump version to 0.4
Thorsten Maerz (1):
make: strip CC
0.9.5 -------------------------------------------------------------------
Note: The txtinfo and jsoninfo plugins were 'merged' to use a common
codebase for receiving requests and dispatching replies. Also,
these plugins were subjected to review and fixes. As a result:
- request handling has become much stricter, e.g. a txtinfo
request '/links' will no longer work since the correct request is
(and has always been) '/lin'.
- some fixes change the format and/or content of txtinfo and/or
jsoninfo output. An example is the txtinfo output of the request
'/mid' when 'vtime' is enabled on txtinfo; this has been broken
since the end of 2009 (c555a44).
- invalid requests will return HTTP error status code
"Not Found" (404) when HTTP headers are enabled, and report
an error in the output when they are not enabled.
- requests without output will return HTTP error status code
"No Content" (204) when HTTP headers are enabled, and report
an error in the output when they are not enabled.
It is VERY strongly advised to check your scripts and applications
interfacing with olsrd txtinfo and/or jsoninfo before switching
to this version of olsrd.
Ferry Huberts (824):
Update version after branch of v0.9.0
Merge branch 'release-0.9.0'
neighbors: signal link changes when deleting a neighbor
Merge branch 'release-0.6.8'
Merge branch 'release-0.9.0'
conf: lock_file is derived config.
jsoninfo: fix a crash when there are no gateways
txtinfo: fix a crash when there are no gateways
Merge branch 'release-0.9.0'
Merge branch 'release-0.9.0'
Merge branch 'release-0.9.0'
files: regenerate the generated default full configuration
Fixup CHANGELOG file
Merge branch 'release-0.6.8'
Merge branch 'release-0.9.0'
jsoninfo: fix a Coverity warning
txtinfo: similar fix as the previous commit
make: add NOSTRIP option
files: minor improvement to config file generation script
sgw: add SmartGatewayMaxCostMaxEtx configuration setting
jsoninfo: fix a Coverity warning
txtinfo: similar fix as the previous commit
Merge branch 'release-0.9.0'
files: regenerate the generated default full configuration
files: minor improvement to config file generation script
sgw: add SmartGatewayMaxCostMaxEtx configuration setting
Merge branch 'release-0.9.0'
egressFile: use a define for the line length
pud: clear the cached timestamp when the position file can't be read
pud: increase the resolution of the cached timestamp of the position file
pud: minor fix in the function reading the position file
pud: cache the correct timestamp
sgwdynspeed: clear the cached timestamp when the speed file can't be read
sgwdynspeed: increase the resolution of the cached timestamp
sgwdynspeed: properly close the speed file
sgwdynspeed: cache the correct timestamp
sgw: cache timestamp of egress file earlier
sgw: cache the correct timestamp
sgw: remove unneeded check against 0 for cached timestamp
sgw: properly close the egress file
sgw: do not clear egress data in the read race
sgw: properly open and stat the egress file
Merge branch 'release-0.9.0'
sgwdynspeed: let the out block close the file
sgw: fix EOL stripping of the egress file
Merge branch 'release-0.9.0'
quagga: zero-out the extra allocated buffer size
conf: clean up interface names on config file read failure
cookie: fix loop invariant assert and exit on cookie exhaustion
quagga: zero-out the extra allocated buffer size
quagga: restore socket status on error paths in zclient_read function
Merge branch 'release-0.9.0'
sgw: do not program routes on interfaces that are not up
sgw: policy script: fix error reports when too many arguments
sgw: policy script: fix some comparisons
sgw: policy script: move some declarations
sgw: policy script: minor improvement
sgw: policy script: fix cosmetic rebase issue of the previous commit
cfg: minor fixup to printing of SmartGatewayPolicyRoutingScript
dyn_gw: fix a mistake in 36111ca
cfg: fix printing of a few <not set> settings
sgw: add SmartGatewayInstanceId setting
sgw: policy script: add the instance id to the script
sgw: policy script: log invocations and add cleanup mode
sgw: invoke the cleanup mode of the policy script on start and stop
jsoninfo: also output SmartGatewayInstanceId
olsr_exit: protect against a NULL olsr_cnf
olsr_exit: protect against a NULL message
olsr_exit: also flush stderr on exit
olsr_exit: clarify why the explicit exit is needed
olsr: make sure olsr_cnf is initialised
mdns: update a comment about exit
p2pd: update a comment about exit
dyngw: call olsr_exit() instead of exit()
httpinfo: call olsr_exit() instead of exit()
pgraph: call olsr_exit() instead of exit()
secure: call olsr_exit() instead of exit()
linux: call olsr_exit() instead of exit()
unix: call olsr_exit() instead of exit()
win32: call olsr_exit() instead of exit()
olsr: call olsr_exit() instead of exit()
plugin_loader: call olsr_exit() instead of exit()
quagga: clean up invocation of olsr_exit
build_msg: clean up invocation of olsr_exit
cookie: clean up invocation of olsr_exit
interfaces: clean up invocation of olsr_exit
lq_plugin: clean up invocation of olsr_exit
main: clean up invocation of olsr_exit
olsr: clean up invocation of olsr_exit
parser: clean up invocation of olsr_exit
quagga: clean up olsr_exit messages
linux: clean up olsr_exit messages
ipc_frontend: clean up olsr_exit messages
main: clean up olsr_exit messages
httpinfo: remove unused copyright_string
conf: remove unused copyright_string
main: remove unused copyright_string
main: remove pointless type size asserts
main: make sure all variables are initialised
main: move some initialisation to the beginning of main
main: always store argv
random: remove pointless olsr_init_random, only invoked in main
conf: fix determining the lock file, mirror what main does
main: no need to re-determine lock_file; already setup by set_derived_cnf
main: use olsr_cnf->lock_file directly
lock_file: move olsrd_get_default_lockfile into its own file
main: move olsr_create_lock_file into its own file
lock_file: add olsr_remove_lock_file function
main: remove the lock file in olsr_shutdown
main: move printing of version into a function
main: move loading the config into the loadConfig function
main: minor improvements to loadConfig
main: initialise timers after processing the configuration
main: process olsrd options in a block
main: minor improvements
conf: remove an unneeded printf
conf: move loadConfig function here from main
pid: move pid file handling into its own file
main: move lock file creation into the lock_file file
main: move conf_file_name variable into cfgparser
main: limit the scope of 2 variables to where they are needed
main: invoke olsr_exit at the end of main
main: minor update
main: initialise IPC a bit earlier
main: call olsr_exit when writing the PID file fails
main: minor update
link_set: make sure link_changes is initialised
main: minor update
main: call olsr_exit in olsr_reconfigure
main: track the heartbeat timer
main: stop the heartbeat timer during shutdown
pid_file: add removePidFile function
log: add olsr_closelog function
main: close the log in olsr_shutdown
main: stop the scheduler in olsr_shutdown
main: move CLI related function into their own file
main: move some functions around
lock_file: explicitly ignore failure of file removal
conf: avoid memory leaks during parsing
conf: make sure debug_handle is initialised
conf: ensure all config fields are explicitly initialised
conf: add ip_prefix_list_clear function
conf: olsrd_free_cnf: set pointers back to NULL after freeing
conf: olsrd_free_cnf: refactor a bit to use the lists directly
conf: olsrd_free_cnf: reorder a bit
conf: olsrd_free_cnf: free everything
conf: do not leak the configuration when freeing it
conf: initialise sgw uplink & downlink before setting them
main: open syslog right at the start
main: minor update
sgw: only select an olsr or egress interface when it is up
jsoninfo: sgw field in /sgw response is not an array
jsoninfo: sgw: simplify prefix output
jsoninfo: sgw: show tableNr, ruleNr and bypassRuleNr too
jsoninfo: sgw: show entries without tc too
jsoninfo: sgw: minor simplification reducing memory usage
txtinfo: sgw: show entries without tc too
txtinfo: sgw: line-up to jsoninfo
txtinfo: sgw: do not access uninitialised memory
txtinfo: sgw: print the prefix length for IPv6
txtinfo: format code
txtinfo: use the same c-basic-offset: 2 as jsoninfo
txtinfo: simplify an ifdef
txtinfo: simplify some string comparisons
txtinfo: simplify some send_what checks
txtinfo: use a define for the plugin name
txtinfo: rename some functions
txtinfo: use defines for some variables
txtinfo: use a define to rename TXTINFO_ALLOW_LOCALHOST
txtinfo: rename some SIW_x flags
txtinfo: move ipc_print_mid function up a bit
txtinfo: move ipc_print_gateways function up a bit
txtinfo: move ipc_print_version function up a bit
txtinfo: rename txtinfo_write_data function
txtinfo: use the plugin name in a malloc call
txtinfo: re-order the sent information
txtinfo: simplify some comparisons
txtinfo: add httpheaders configuration parameter
txtinfo: http headers must use \r\n line endings
txtinfo: use HTTP/1.1
txtinfo: use a bigger (2 CPU pages) initial buffer
txtinfo: renumber SIW_x defines and put them in 'groups'
txtinfo: the configuration is a special case
txtinfo: send everything on an unknown option
txtinfo: some more formatting
txtinfo: remove superfluous forward declarations
txtinfo: expand SIW_RUNTIME_ALL to include all runtime information
txtinfo: remove personal copyrights, just check the git log
jsoninfo: use a define for the plugin name
jsoninfo: use defines for some variables
jsoninfo: use a define to rename TXTINFO_ALLOW_LOCALHOST
jsoninfo: use the set_plugin_boolean function
jsoninfo: initialise outbuffer_count
jsoninfo: update some comments
jsoninfo: move some functions around
jsoninfo: use the plugin name in a malloc call
jsoninfo: use a smaller (2 CPU pages) initial buffer
jsoninfo: limit the number of in-flight connection to 3, like txtinfo
jsoninfo: rename a function
jsoninfo: more formatting
jsoninfo: fix content type of http headers for /olsr.conf
jsoninfo: remove personal copyrights, just check the git log
jsoninfo: move some variables around
jsoninfo: move json support functions into their own file
txtinfo: fixup the Content-Type http header
jsoninfo: ensure date in http header is in GMT, as advertised
jsoninfo: fixup the Server http header
jsoninfo: fixup the Connection http header
jsoninfo: fixup the Content-Type http header
jsoninfo: fixup the Content-Length http header
txtinfo: remove a pointless assert
txtinfo: also send the (UTF-8) charset in the content type
txtinfo: avoid a memcpy: just move the abuf.buf pointer and clear abuf
jsoninfo: refactor generation of the headers
jsoninfo: also send the (UTF-8) charset in the content type
jsoninfo: avoid a memcpy: just move the abuf.buf pointer and clear abuf
jsoninfo: send http headers by default
txtinfo: bring over proper http header support from jsoninfo
olsr_exit: use EXIT_SUCCESS or EXIT_FAILURE exclusively
olsr_exit: fix some exit codes
exit: use EXIT_SUCCESS or EXIT_FAILURE exclusively
exit: fix some exit codes
txtinfo: undo output re-ordering of 4563faa
jsoninfo: use the same order as txtinfo
jsoninfo: remove an unused define
src: add some forgotten includes
txtinfo: use the same 'c-basic-offset: 2' as jsoninfo
txtinfo: treat the olsrd configuration differently
txtinfo: catch '/all' earlier when determining the action
txtinfo: send the information in the runtime and startup groups for '/all'
txtinfo: '/ver' and '/neighbours' are specials when determining the action
txtinfo: add (unsupported) commands '/config' and '/plugins'
txtinfo: add /runtime and /startup commands
jsoninfo: INADDR_LOOPBACK is in host format and the socket address is not
jsoninfo: fix PLUGIN_NAME that is reported on plugin init
jsoninfo: initialise uuidfile as well
jsoninfo: use standard set_plugin_string function for uuidfile parameter
jsoninfo: reorder some includes
jsoninfo: fix some indents
jsoninfo: add Freifunk neighbours special case, like txtinfo
txtinfo: move http header related functions into common code
jsoninfo: move http header related functions into common code
txtinfo: move determining the action into a separate function
jsoninfo: move determining the action into a separate function
txtinfo: add plugin_init hook
jsoninfo: add plugin_init hook
txtinfo: move ipc_print_* functions into a 'printers' unit
jsoninfo: move ipc_print_* functions into a 'printers' unit
txtinfo: use a table of function pointers in send_info
jsoninfo: use a table of function pointers in send_info
txtinfo: move SIW_x defines into common code
jsoninfo: move SIW_x defines into common code
txtinfo: wrap the outbuffer in a struct for easier usage
jsoninfo: wrap the outbuffer in a struct for easier usage
jsoninfo: only need to reset entry number for json output
txtinfo: determine the mime type via the functions table
jsoninfo: determine the mime type via the functions table
txtinfo: put the plugin init hook in the functions table
jsoninfo: put the plugin init hook in the functions table
txtinfo: put command parsing in the functions table
jsoninfo: put command parsing in the functions table
txtinfo: put output start/end in the functions table
jsoninfo: put output start/end in the functions table
txtinfo: convert INFO_ALLOW_LOCALHOST define into a plugin parameter
jsoninfo: convert INFO_ALLOW_LOCALHOST define into a plugin parameter
txtinfo: convert ACTIVATE_VTIME_TXTINFO into a plugin parameter
txtinfo: wrap generic info plugin configuration in a struct
jsoninfo: wrap generic info plugin configuration in a struct
info: merge jsoninfo and txtinfo common code
Makefile: add pseudo plugin info
txtinfo: move code from olsr_txtinfo into olsr_plugin
jsoninfo: move code from olsr_jsoninfo into olsr_plugin
info: code formatting
info: rename some http header function parameters
info: rename type printer_functions_t to info_plugin_functions_t
info: rename variable printer_functions to functions
txtinfo: rename variable printer_functions to functions
jsoninfo: rename variable printer_functions to functions
info: rename type outbuffer_t to info_plugin_outbuffer_t
info: do not export info_plugin_outbuffer_t, only used internally
info: rename header files recursive include guards
info: rename a http header function
info: update copyrights
jsoninfo: rename info_plugin_config to config
txtinfo: rename info_plugin_config to config
info: rename a function parameter
info: rename info_plugin_config to config
info: rename PLUGIN_NAME to name
info: rename a function
info: add some asserts
info: remove some comments
info: ensure all variables are correctly initialised and cleaned up
info: use a define for the info_plugin_config_t plugin parameters
jsoninfo: rename 'printers' unit
txtinfo: rename 'printers' unit
info: split out neighbors and 2hop printer functions
info: rename a function prototype
info: minor formatting fix
info: there can only be a single command, optimise determine_action
info: write_data: exit early if there is nothing to send
info: write_data: do not add invalid sockets to the FD set
info: write_data: add a comment
info: write_data: properly clean up an output buffer
info: write_data: do not consider an invalid socket for send
info: write_data: use a safer 'close the socket' condition
info: write_data: do not move buffers around
info: ipc_action: rename 2 variables
info: ipc_action: move inet_ntop out of condition blocks
info: ipc_action: only use addr in debug builds
info: ipc_action: minor simplification
info: ipc_action: merge 2 if statements
info: ipc_action: make the IPv6 if statement like the IPv4 one
info: ipc_action: use a static sink buffer
info: ipc_action: use a safer 'oversize' comparison
info: ipc_action: minor fix
info: plugin_ipc_init: rename 2 variables
info: plugin_ipc_init: 'unelse' an else branch, the if already returns
info: plugin_ipc_init: close the ipc_socket on the error paths
info: plugin_ipc_init: fix a perror message
info: plugin_ipc_init: merge 2 if statements
info: http headers: add some asserts
info: check against the correct __linux__ define
txtinfo: rename header files recursive include guards
jsoninfo: rename header files recursive include guards
txtinfo: remove some unused includes
jsoninfo: remove some unused includes
info: add a function to initialise the config
txtinfo: use the function to initialise the config
jsoninfo: use the function to initialise the config
jsoninfo: helpers: minor simplification of abuf_json_new_indent
jsoninfo: helpers: firm up asserts on currentjsondepth
jsoninfo: helpers: use abuf_json_insert_comma
jsoninfo: helpers: output floats in full precision
jsoninfo: helpers: fix output format for int/long
jsoninfo: helpers: use an actual bool as parameter for abuf_json_boolean
jsoninfo: helpers: get_string_from_file ensures '\0' in the first byte
jsoninfo: helpers: use sizeof() for buffers
jsoninfo: helpers: use a double as parameter for abuf_json_float
jsoninfo: helpers: use sizeof() for uuid size
txtinfo: define the vtime extern in the proper place
jsoninfo: define the uuidfile extern in the proper place
info: minor reordering in send_info to reflect SIW_x order
info: simplify use of the functions table
txtinfo: simplify setup of the functions table
jsoninfo: simplify setup of the functions table
info: simplify use of the functions table further
info: simplify determine_action
info: update README
txtinfo: update README
jsoninfo: update README
info: remove unused nompr field from the configuration
txtinfo: minor improvements to /sgw printing
jsoninfo: helpers: add abuf_json_ip_address
jsoninfo: use the new ip address helper in /sgw printing
jsoninfo: minor improvement to /sgw printing
lq plugins: ensure string termination in lq_print_cost functions
jsoninfo: minor field reordering for /sgw
jsoninfo: add 'selectable' field to /sgw
jsoninfo: refactor /gateways
jsoninfo: move duplicated 'selectable' code into a function
txtinfo: simplify some code for /gat
txtinfo: minor formatting in /gat
txtinfo: also print gateways without a tc in /gat
txtinfo: do not use tabs in the /gat table, use fixed widths
txtinfo: minor scope change of 2 variable in /gat
jsoninfo: only show gateways of the request IP version in /gateways
jsoninfo: neighbors/2hop: show more information
files: clarify why jsoninfo is in the example configuration files
make: support building with clang (on Linux)
all: fixes resulting from building with clang
txtinfo: use strcmp instead of strstr
jsoninfo: use strcmp instead of strstr
jsoninfo: review of /hna
txtinfo: review of /hna
info: strip EOLs from the command
CHANGELOG: add a note about txtinfo and jsoninfo being merged
cookie: split assert to see which part actually triggers the assert
info: do not try to interpret the request when it is too large
info: fix processing of command per HTTP request
main: add & enable a new SEGV handler (Linux only)
Add a safety net in the segfault handler
ifnet: remove unused function set_flag
linux: netlink_process_link: simplify NULL comparisons and add some braces
linux: netlink_process_link: always determine the interface name
linux: netlink_process_link: always determine the oif
linux: netlink_process_link: simplify a comparison
linux: netlink_process_link: compute up status only once
linux: netlink_process_link: simplify an if/else
ifnet: add getInterfaceLinkState function
all: use the getInterfaceLinkState function
Fix 2 Coverity warnings
ifnet: ensure string termination
pud: nmealib: be less strict about satellite elevation
txtinfo: review /lin
txtinfo: review /nei and /2ho
txtinfo: review /hna
txtinfo: add forgotten 2hop in function table
jsoninfo: add forgotten 2hop in function table
jsoninfo: protect abuf_json_ip_address against a NULL IP address
jsoninfo: protect against a possible null-deref in ipc_print_neighbors
jsoninfo: also show the hops for /sgw, like for /gateways
jsoninfo: also show local HNAs, like txtinfo does
jsoninfo: review /links and show more information
jsoninfo: extract printing a gateway to a function
info: minor update to the README
info: fix send result error check in write_data
info: do not send buffers of zero length, wget can't handle that
info: introduce and use ARRAY_SIZE define
info: simplify send_info function
jsoninfo: simplify isCommand function
jsoninfo / sgw: isGwSelectable function is common, use it as such
jsoninfo: minor improvements
jsoninfo: be a bit more explicit in determine_mime_type
txtinfo: minor fixes to the README
txtinfo: simplify isCommand function
txinfo: fix 2-hop output
txtinfo: avoid a potential null deref in 2-hop
txtinfo: simplify printing links
txtinfo: avoid a potential null deref in links
txtinfo: simplify printing routes
txtinfo: avoid a potential null deref in routes
txtinfo: simplify printing topology
txtinfo: simplify printing HNAs
txtinfo: simplify and fix printing MIDs
txtinfo: clarify that using /gat and /sgw on non-Linux is an error
txtinfo: simplify gateways
txtinfo: simplify sgw
txtinfo: add an empty line after the version, like all other tables
txtinfo: simplify interfaces
changelog: update the warning about txtinfo/jsoninfo
main: musl does not support execinfo.h (the backtrace functions)
make: preserve debugging info when NOSTRIP is set
info: requests that are too large must set s to < 0
info: also handle empty requests
info: rename an HTTP status define
info: requesting / now is equivalent to /all
info: prepare for more HTTP status codes
info: add function to the function table to output an error
info: respond with "not found" (404) on invalid commands
info: respond with "no content" (204) on empty output
txtinfo: /config & /plugins are not implemented: return "not found" (404)
changelog: update for info/jsoninfo/txtinfo changes
make: add more recognised formats to the gcc-warnings script
make: need to load the OS specific makefile before evaluating WARNINGS
make: remove conditionals in WARNINGS section, no longer needed
make: sort warnings flags and make that section a bit easier to read
unix: fix GCC 6 warnings
link_set: fix GCC 6 warnings
sgw: fix GCC 6 warnings
parser: fix GCC 6 warnings
bmf: fix GCC 6 warnings
mdns: fix GCC 6 warnings
p2pd: fix GCC 6 warnings
pud: fix GCC 6 warnings
quagga: fix GCC 6 warnings
make: add new GCC 6 warning flags
scheduler: fix a typo
scheduler: mark timers for removal and only remove them in a cleanup walk
main: ensure all timers are stopped in shutdown
cfgparser: remove some unreachable code
scheduler: mark timers for removal and only remove them in a cleanup walk
main: ensure all timers are stopped in shutdown
scheduler: fix olsr_flush_timers to not hang
main: print the received signal name instead of the signal number
main: cleanup the gateways earlier on shutdown
scheduler: fix olsr_flush_timers to not hang
main: cleanup the gateways earlier on shutdown
txtinfo: output an error on unknown status codes too
txtinfo: move a function
jsoninfo: output an error on unknown status codes too
jsoninfo: re-arrange some imports
jsoninfo: all neighbour entries now have twoHopNeighborCount
jsoninfo: add hysteresis to /links
jsoninfo: add etx to /routes
jsoninfo: improve /topology, show more information
jsoninfo: improve /hna
info: add a comment about why info_plugin_outbuffer_t is there
info: try to send the response immediately
info: speed up sending pending responses
info: check for retry after trying to send
jsoninfo: remove some dead code
txtinfo: check INFO_HTTP_OK upon entry of the function
main: add noreturn attribute on olsr_segv_handler
make: improve clang support
make: do not add -Wcast-qual on Windows
make: move -Werror flag into the normal list of warnings
make: fix compiler flags probing
gui: fix a few clang warnings
jsoninfo: improve /mid and add validityTime of mid entry itself
jsoninfo: improve printing a gateway entry, and add expiry/cleanup timers
jsoninfo: improve the ipc_print_gateways_ipvx function
jsoninfo: improve the skip condition in ipc_print_gateways_ipvx
builddata: generate more build information
jsoninfo: show more information in /version
config: always lower-case plugin parameter names
bmf: ignore case on the BmfMechanism plugin parameter value
jsoninfo: make abuf_json_int take a long long value
jsoninfo: simplify /plugins
jsoninfo: fix a windows compile error
scheduler: fix a typo
scheduler: do not stop timers that are not running
scheduler: make olsr_flush_timers more robust
main: do not allow nested shutdown
scheduler: fix a typo
scheduler: do not stop timers that are not running
scheduler: make olsr_flush_timers more robust
jsoninfo: minor improvement to /2hop
jsoninfo: helpers: move a static string declaration
jsoninfo: helpers: add asserts
jsoninfo: helpers: output an empty string when the string is null
jsoninfo: helpers: account for NaN and INF in float printing
jsoninfo: add some comments
jsoninfo: simplify output_error by using an abuf
jsoninfo: minor improvements
jsoninfo: put printing a hna entry into a function and use it
jsoninfo: improve and update /config
jsoninfo: use the abuf_json_ip_address helper
jsoninfo: use print_link_quality_multipliers_array_entry in /interfaces
jsoninfo: add print_interface_config function and use it
jsoninfo: improve /interfaces
jsoninfo: do not show interface /sys/class/net/data in /interfaces
jsoninfo: move some static functions around
info: strip trailing slashes from the command
info: skip multiple leading slashes on the command
info: re-introduce composite commands
jsoninfo: add some asserts
jsoninfo: protect against nulll-deref in print_interface_config
jsoninfo: protect against out-of-bounds accesses of TXT array
jsoninfo: in /plugins list plugin parameters as array entries
jsoninfo: in /plugins show parameters as name/value
jsoninfo: simplify /mid output
jsoninfo: in /plugins list plugin parameters as map entries
jsoninfo: allow key to be NULL when printing an IP address
jsoninfo: print the 2-hops neighbors as a simple list of IP addresses
jsoninfo: minor simplification in /2hop
info: create more space for more info commands
jsoninfo: add a function to directly convert an IP address
jsoninfo: in /interfaces show 'state' text as 'up' boolean
jsoninfo: in /interfaces use the new IP address helper function
jsoninfo: remove an obsolete comment
jsoninfo: in /interfaces show message times like validity times
jsoninfo: allow key to be NULL when printing a string
jsoninfo: improve /config
jsoninfo: in /config rename sgw weight section to costsCalculation
jsoninfo: remove a derived field from the /config output
jsoninfo: fix a typo in /config
sgw: fix a mask in the sgw status file
Revert "sgw: fix a mask in the sgw status file"
sgw: update a comment
info: move json helpers here from jsoninfo
info: add abuf_json_prefix json helper
info: minor layout improvements
info: move iterating over a table of siw/function entries into a function
info: rename json helpers files
sgw: add isEgressSelected function
jsoninfo: also show egress information in /sgw
jsoninfo: do not null-deref prefix in abuf_json_prefix
jsoninfo: in /sgw separate prefixes and their lengths
make: improve jsoninfo and txtinfo dependencies on info
sgw: do not show unused tunnels in the status file
sgw: remove some dead code left over in the previous commit
info: minor layout improvements
info: use AUTOBUFCHUNK instead of hard-coding it
info: fix a type
info: move some type delcarations up in a header file
info: make the INFO_PLUGIN_CONFIG_PLUGIN_PARAMETERS a bit safer
info: make SIW_ENTRIES accessible from other functions
plugin util: make set_plugin_boolean actually set a bool
plugin util: add set_plugin_long function
abuf: add abuf_concat function
cfgfile: cache the generated configuration file
scheduler: export the olsr_times function
info: add support for caching and use it
info: minor fix
info: reflect that the SIW defines are 64 bit wide
info: completely switch of caching for timeouts <= 0
info: lazily initialise the cache
sgw: remove struct costs_weights and max_cost_etx_max from the costs API
spf: tc->path_cost is a route cost, fix level 2 OLSR_PRINTF messages
spf: safer checking against LINK_COST_BROKEN and ROUTE_COST_BROKEN
routing table: safer checking against LINK_COST_BROKEN & ROUTE_COST_BROKEN
pud: safer checking against LINK_COST_BROKEN and ROUTE_COST_BROKEN
sgw: safer checking against LINK_COST_BROKEN and ROUTE_COST_BROKEN
lq plugins: safer checking against LINK_COST_BROKEN and ROUTE_COST_BROKEN
lq plugins: explicit unsigned for LINK_COST_BROKEN and ROUTE_COST_BROKEN
fpm: add fpmtod function
lq plugins: add get_cost_scaled function
lq plugins: make the print_cost_float functions behave the same
lq plugins: remove print_cost, use get_cost_scaled in generic function
lq: add get_linkcost_scaled function
lq: minor optimisation
main: initialise sgw system after the tables
bmf: fix currEtx type and link/route confusion
sgw: show the route costs text in log messages
sgw: add get_gwcost_scaled and get_gwcost_text functions
sgw: show the scaled route cost in the program status file
sgw: show the scaled gw cost in the program status file
httpinfo: show the scaled route cost in the sgw pane
httpinfo: show the scaled gw cost in the sgw pane
txtinfo: show the scaled route cost in the sgw output
txtinfo: show the scaled gw cost in the sgw output
jsoninfo: show scaled route/link cost in
gateways|sgw|links|routes|topology
jsoninfo: show the scaled gw cost in gateways|sgw
sgw: simplify get_gwcost_scaled
info: make defines for SIW_* constants a bit clearer
info: add the define SIW_EVERYTHING
info: fix send_what for empty requests
info: stop evaluating send_what when all information has been processed
info: only try to match supported commands
arprefresh: show Git SHA in plugin constructor
bmf: use PLUGIN_NAME_SHORT in logs
bmf: do no show version in plugin constructor
bmf: remove PLUGIN_AUTHOR, Git shows who worked on it
bmf: plugin name like other plugins and minor layout change
bmf: show Git SHA in plugin constructor
bmf: do not show copyright in constructor, Git shows who has copyright
dot_draw: remove PLUGIN_AUTHOR, Git shows who worked on it
dot_draw: do no show version in plugin constructor
dot_draw: show Git SHA in plugin constructor
dyn_gw: remove PLUGIN_AUTHOR, Git shows who worked on it
dyn_gw: show Git SHA and no version in plugin constructor
dyn_gw_plain: show Git SHA and no author in plugin constructor
httpinfo: remove PLUGIN_AUTHOR, Git shows who worked on it
httpinfo: show Git SHA and no version and no author in plugin constructor
jsoninfo: remove PLUGIN_AUTHOR, Git shows who worked on it
jsoninfo: show Git SHA and no version in plugin constructor
mdns: remove PLUGIN_AUTHOR, Git shows who worked on it
mdns: show Git SHA and no version and no copyright in plugin constructor
mini: cleanup
nameservice: remove PLUGIN_AUTHOR, Git shows who worked on it
nameservice: show Git SHA and no version in plugin constructor
p2pd: show Git SHA and no version in plugin constructor
pgraph: remove PLUGIN_AUTHOR, Git shows who worked on it
pgraph: show Git SHA and no version in plugin constructor
pud: use Git SHA from builddata
quagga: remove PLUGIN_AUTHOR, Git shows who worked on it
quagga: show plugin name and Git SHA in plugin constructor
sgwdynspeed: use Git SHA from builddata
secure: remove PLUGIN_AUTHOR, Git shows who worked on it
secure: show Git SHA and no version in plugin constructor
txtinfo: remove PLUGIN_AUTHOR, Git shows who worked on it
txtinfo: show Git SHA and no version in plugin constructor
watchdog: show plugin name and Git SHA in plugin constructor
jsoninfo: simplify setup of plugin functions
txtinfo: simplify setup of plugin functions
all: ensure all files have the same license header
Remove list-excludes
all: avoid includes with relative paths whenever possible
info: be more paranoid when handling received data
info: fix mistake in previous commit
quagga: fixup include files
quagga: use AUTOBUFCHUNK as allocation unit
info: do not include INFO_HTTP_VERSION in httpStatusToReply return
info: add INFO_HTTP_REQUEST_ENTITY_TOO_LARGE http code
info: add INFO_HTTP_INTERNAL_SERVER_ERROR http code
info: add INFO_HTTP_FORBIDDEN http code
info: add INFO_HTTP_SERVICE_UNAVAILABLE http code
jsoninfo: use httpStatusToReply in output_error
txtinfo: use httpStatusToReply in output_error
info: refactor ipc_action to be much clearer and safer
info: add netjson commands