Commit report for master branch

The git bot announce at freeradius.org
Wed Sep 10 00:00:01 CEST 2014


New activity for FreeRADIUS (the high performance and highly configurable RADIUS server)

======
Add .gitignore for rlm_realm

Arran Cudbard-Bell at 2014-09-09T22:10:22Z
Files modified:
	* src/modules/rlm_realm/.gitignore

Commit diff:
https://github.com/FreeRADIUS/freeradius-server/commit/0465dc9fff029f69364affc22132dd16b8b9e278
====== 
rename rlm_realm config struct so it doesn't conflict with the main realms config struct

Arran Cudbard-Bell at 2014-09-09T22:10:18Z
Files modified:
	* src/modules/rlm_realm/rlm_realm.c

Commit diff:
https://github.com/FreeRADIUS/freeradius-server/commit/0949e537969d9b0e6bb98a528d948cedf56576c9
====== 
Cache realm regular expressions

Arran Cudbard-Bell at 2014-09-09T21:53:36Z
Files modified:
	* src/main/realms.c

Commit diff:
https://github.com/FreeRADIUS/freeradius-server/commit/6dcd8fe796774c8ec0176032b9753c2597a18fb1
====== 
Dual should be bool

Arran Cudbard-Bell at 2014-09-09T21:52:19Z
Files modified:
	* src/include/realms.h
	* src/main/realms.c

Commit diff:
https://github.com/FreeRADIUS/freeradius-server/commit/104829f5b358c5e0cd1d026a83c6bc1bfdf64e86
====== 
Fix parenting of dual homeservers

Arran Cudbard-Bell at 2014-09-09T21:52:14Z
Files modified:
	* src/include/realms.h
	* src/main/realms.c

Commit diff:
https://github.com/FreeRADIUS/freeradius-server/commit/bbb2fd461cdca32f8b681a146778a5eb0e6c7cb8
====== 
Quiet valgrind error in rlm_ldap

Arran Cudbard-Bell at 2014-09-09T21:52:11Z
Files modified:
	* src/modules/rlm_ldap/rlm_ldap.c

Commit diff:
https://github.com/FreeRADIUS/freeradius-server/commit/d5d5646de2159865935c056d18b5335eb6582ced
====== 
striprealm should be strip_realm and a bool

Arran Cudbard-Bell at 2014-09-09T21:52:06Z
Files modified:
	* src/include/realms.h
	* src/main/process.c
	* src/main/realms.c
	* src/modules/rlm_realm/rlm_realm.c

Commit diff:
https://github.com/FreeRADIUS/freeradius-server/commit/790b5956c2fb63680ccd1ddf48661ffbe98496f3
====== 
Correctly allocate unknown sub-options

Arran Cudbard-Bell at 2014-09-09T19:33:34Z
Files modified:
	* src/modules/proto_dhcp/dhcp.c

Commit diff:
https://github.com/FreeRADIUS/freeradius-server/commit/666af6d1c34f83a7dd91ed88e4dad39703da94b2
====== 
listen: Retrieve configuration pairs once

Retrieve configuration pairs with cf_pair_find only once, before
checking their existence, in common_socket_parse. This avoids ambiguity
confusing Coverity, which otherwise reports the following issue.

Error: NULL_RETURNS (CWE-476):
freeradius-server-3.0.4rc2/src/main/listen.c:1139: returned_null: Function "cf_pair_find(CONF_SECTION const *, char const *)" returns null (checked 51 out of 54 times).
freeradius-server-3.0.4rc2/src/main/conffile.c:2353:20: return_null: Explicitly returning null.
freeradius-server-3.0.4rc2/src/main/client.c:514: example_checked: Example 1: "cf_pair_find(cs, "ipaddr")" has its value checked in "cf_pair_find(cs, "ipaddr")".
freeradius-server-3.0.4rc2/src/main/conffile.c:667: example_assign: Example 2: Assigning: "cp" = return value from "cf_pair_find(cs, p)".
freeradius-server-3.0.4rc2/src/main/conffile.c:668: example_checked: Example 2 (cont.): "cp" has its value checked in "cp".
freeradius-server-3.0.4rc2/src/main/command.c:1556: example_assign: Example 3: Assigning: "cp" = return value from "cf_pair_find(mi->cs, argv[1])".
freeradius-server-3.0.4rc2/src/main/command.c:1557: example_checked: Example 3 (cont.): "cp" has its value checked in "cp".
freeradius-server-3.0.4rc2/src/main/listen.c:103: example_assign: Example 4: Assigning: "cp" = return value from "cf_pair_find(request->listener->cs, fmt)".
freeradius-server-3.0.4rc2/src/main/listen.c:104: example_checked: Example 4 (cont.): "cp" has its value checked in "cp".
freeradius-server-3.0.4rc2/src/main/mainconfig.c:345: example_assign: Example 5: Assigning: "cp" = return value from "cf_pair_find(request->client->cs, fmt)".
freeradius-server-3.0.4rc2/src/main/mainconfig.c:346: example_checked: Example 5 (cont.): "cp" has its value checked in "cp".
freeradius-server-3.0.4rc2/src/main/listen.c:1139: var_assigned: Assigning: "cp" = null return value from "cf_pair_find(CONF_SECTION const *, char const *)".
freeradius-server-3.0.4rc2/src/main/listen.c:1142: dereference: Dereferencing a pointer that might be null "cp" when calling "cf_log_err_cp(CONF_PAIR const *, char const *, ...)".
freeradius-server-3.0.4rc2/src/main/conffile.c:2930:2: deref_parm: Directly dereferencing parameter "cp".

Nikolai Kondrashov (via Alan T. DeKok)@2014-09-09T19:30:59Z
Files modified:
	* src/main/listen.c

Commit diff:
https://github.com/FreeRADIUS/freeradius-server/commit/f49edd7b2c0c0392803ff944ac6f96c784540ff7
====== 
dhcpclient: Verify socket timeout was set

Verify the return code of setsockopt, as it may fail, in dhcpclient.c.

Coverity has reported the following error for this issue.

Error: CHECKED_RETURN (CWE-252):
freeradius-server-3.0.4rc2/src/modules/proto_dhcp/dhcpclient.c:424:
check_return: Calling function "setsockopt(sockfd, 1, 20, (char *)&tv,
16U)" without checking return value. This library function may fail and
return an error code.
freeradius-server-3.0.4rc2/src/modules/proto_dhcp/dhcpclient.c:424:
unchecked_value: No check of the return value of "setsockopt(sockfd, 1,
20, (char *)&tv, 16U)".

Nikolai Kondrashov (via Alan T. DeKok)@2014-09-09T19:30:57Z
Files modified:
	* src/modules/proto_dhcp/dhcpclient.c

Commit diff:
https://github.com/FreeRADIUS/freeradius-server/commit/2b78c706804ad5a3d00de9b01f1b854fe69e8a25
====== 
dhcpd: Check cf_item_parse result

Check the result of cf_item_parse for error, propagating it up the
stack in dhcp_socket_parse.

Coverity has reported the following errors for this issue.

Error: CHECKED_RETURN (CWE-252):
freeradius-server-3.0.4rc2/src/modules/proto_dhcp/dhcpd.c:638: check_return: Calling function "cf_item_parse(CONF_SECTION *, char const *, int, void *, char const *)" without checking return value (as is done elsewhere 12 out of 14 times).
freeradius-server-3.0.4rc2/src/main/conffile.c:1416: example_assign: Example 1: Assigning: "ret" = return value from "cf_item_parse(cs, (variables + i).name, (variables + i).type, data, (variables + i).dflt)".
freeradius-server-3.0.4rc2/src/main/conffile.c:1417: example_checked: Example 1 (cont.): "ret" has its value checked in "ret < 0".
freeradius-server-3.0.4rc2/src/main/command.c:1569: example_assign: Example 2: Assigning: "rcode" = return value from "cf_item_parse(mi->cs, argv[1], (variables + i).type, data, argv[2])".
freeradius-server-3.0.4rc2/src/main/command.c:1570: example_checked: Example 2 (cont.): "rcode" has its value checked in "rcode < 0".
freeradius-server-3.0.4rc2/src/main/listen.c:916: example_assign: Example 3: Assigning: "rcode" = return value from "cf_item_parse(cs, "ipaddr", 14, &ipaddr, NULL)".
freeradius-server-3.0.4rc2/src/main/listen.c:917: example_checked: Example 3 (cont.): "rcode" has its value checked in "rcode < 0".
freeradius-server-3.0.4rc2/src/main/listen.c:2834: example_assign: Example 4: Assigning: "rcode" = return value from "cf_item_parse(cs, "type", 1, &listen_type, "")".
freeradius-server-3.0.4rc2/src/main/listen.c:2835: example_checked: Example 4 (cont.): "rcode" has its value checked in "rcode < 0".
freeradius-server-3.0.4rc2/src/main/radmin.c:530: example_assign: Example 5: Assigning: "rcode" = return value from "cf_item_parse(subcs, "socket", 1, &file, NULL)".
freeradius-server-3.0.4rc2/src/main/radmin.c:531: example_checked: Example 5 (cont.): "rcode" has its value checked in "rcode < 0".
freeradius-server-3.0.4rc2/src/modules/proto_dhcp/dhcpd.c:638: unchecked_value: No check of the return value of "cf_item_parse(cs, "suppress_responses", 23, &sock->suppress_responses, NULL)".

Error: CHECKED_RETURN (CWE-252):
freeradius-server-3.0.4rc2/src/modules/proto_dhcp/dhcpd.c:643: check_return: Calling function "cf_item_parse(CONF_SECTION *, char const *, int, void *, char const *)" without checking return value (as is done elsewhere 12 out of 14 times).
freeradius-server-3.0.4rc2/src/main/conffile.c:1416: example_assign: Example 1: Assigning: "ret" = return value from "cf_item_parse(cs, (variables + i).name, (variables + i).type, data, (variables + i).dflt)".
freeradius-server-3.0.4rc2/src/main/conffile.c:1417: example_checked: Example 1 (cont.): "ret" has its value checked in "ret < 0".
freeradius-server-3.0.4rc2/src/main/command.c:1569: example_assign: Example 2: Assigning: "rcode" = return value from "cf_item_parse(mi->cs, argv[1], (variables + i).type, data, argv[2])".
freeradius-server-3.0.4rc2/src/main/command.c:1570: example_checked: Example 2 (cont.): "rcode" has its value checked in "rcode < 0".
freeradius-server-3.0.4rc2/src/main/listen.c:916: example_assign: Example 3: Assigning: "rcode" = return value from "cf_item_parse(cs, "ipaddr", 14, &ipaddr, NULL)".
freeradius-server-3.0.4rc2/src/main/listen.c:917: example_checked: Example 3 (cont.): "rcode" has its value checked in "rcode < 0".
freeradius-server-3.0.4rc2/src/main/listen.c:2834: example_assign: Example 4: Assigning: "rcode" = return value from "cf_item_parse(cs, "type", 1, &listen_type, "")".
freeradius-server-3.0.4rc2/src/main/listen.c:2835: example_checked: Example 4 (cont.): "rcode" has its value checked in "rcode < 0".
freeradius-server-3.0.4rc2/src/main/radmin.c:530: example_assign: Example 5: Assigning: "rcode" = return value from "cf_item_parse(subcs, "socket", 1, &file, NULL)".
freeradius-server-3.0.4rc2/src/main/radmin.c:531: example_checked: Example 5 (cont.): "rcode" has its value checked in "rcode < 0".
freeradius-server-3.0.4rc2/src/modules/proto_dhcp/dhcpd.c:643: unchecked_value: No check of the return value of "cf_item_parse(cs, "src_interface", 1, &sock->src_interface, NULL)".

Nikolai Kondrashov (via Alan T. DeKok)@2014-09-09T19:30:56Z
Files modified:
	* src/modules/proto_dhcp/dhcpd.c

Commit diff:
https://github.com/FreeRADIUS/freeradius-server/commit/30aae8be22fd3844753d56e1c86f4459ec7af0dc
====== 
dhcp: Remove unused attribute allocation

Remove unused and unfreed unknown attribute allocation to prevent memory
leak. Coverity has reported the following error for this issue.

Error: RESOURCE_LEAK (CWE-772):
freeradius-server-3.0.4rc2/src/modules/proto_dhcp/dhcp.c:956: alloc_fn: Storage is returned from allocation function "dict_attrunknown(unsigned int, unsigned int, int)".
freeradius-server-3.0.4rc2/src/lib/dict.c:2666:2: alloc_fn: Storage is returned from allocation function "malloc(size_t)".
freeradius-server-3.0.4rc2/src/lib/dict.c:2666:2: var_assign: Assigning: "da" = "malloc(148UL)".
freeradius-server-3.0.4rc2/src/lib/dict.c:2671:2: noescape: Resource "da" is not freed or pointed-to in function "memset(void *, int, size_t)".
freeradius-server-3.0.4rc2/src/lib/dict.c:2687:2: var_assign: Assigning: "p" = "da".
freeradius-server-3.0.4rc2/src/lib/dict.c:2689:2: noescape: Resource "p" is not freed or pointed-to in function "snprintf(char * restrict, size_t, char const * restrict, ...)".
freeradius-server-3.0.4rc2/src/lib/dict.c:2712:3: noescape: Resource "p" is not freed or pointed-to in function "snprintf(char * restrict, size_t, char const * restrict, ...)".
freeradius-server-3.0.4rc2/src/lib/dict.c:2718:2: noescape: Resource "p" is not freed or pointed-to in function "print_attr_oid(char *, size_t, unsigned int, int)".
freeradius-server-3.0.4rc2/src/lib/dict.c:2546:36: noescape: "print_attr_oid(char *, size_t, unsigned int, int)" does not free or save its pointer parameter "buffer".
freeradius-server-3.0.4rc2/src/lib/dict.c:2720:2: return_alloc: Returning allocated memory "da".
freeradius-server-3.0.4rc2/src/modules/proto_dhcp/dhcp.c:956: var_assign: Assigning: "da" = storage returned from "dict_attrunknown(p[0], 54U, 1)".
freeradius-server-3.0.4rc2/src/modules/proto_dhcp/dhcp.c:991: leaked_storage: Variable "da" going out of scope leaks the storage it points to.

Nikolai Kondrashov (via Alan T. DeKok)@2014-09-09T19:30:55Z
Files modified:
	* src/modules/proto_dhcp/dhcp.c

Commit diff:
https://github.com/FreeRADIUS/freeradius-server/commit/b2576a4ab459234288be412d39dac227dab7b7d0
====== 
radsniff: Fix buffer overruns

Divide by the element size when checking for circular buffer wrap in
rs_response_to_pcap and rs_request_to_pcap.

The following Coverity errors were reported for the defect.

Error: OVERRUN (CWE-119):
freeradius-server-3.0.4rc2/src/main/radsniff.c:934: illegal_address:
"&request->capture[80UL]" evaluates to an address that is at byte offset
1280 of an array of 80 bytes.

Error: SIZEOF_MISMATCH (CWE-398):
freeradius-server-3.0.4rc2/src/main/radsniff.c:934:
suspicious_pointer_arithmetic: Adding "80UL /* sizeof (request->capture)
*/" to pointer "request->capture" of type "rs_capture_t [5]" is
suspicious because adding an integral value to this pointer
automatically scales that value by the size, 16 bytes, of the pointed-to
type, "rs_capture_t".  Most likely, you intended to use the number of
elements in "request->capture" rather than its size in bytes.

Error: OVERRUN (CWE-119):
freeradius-server-3.0.4rc2/src/main/radsniff.c:972: illegal_address:
"&request->capture[80UL]" evaluates to an address that is at byte offset 1280
of an array of 80 bytes.

Error: SIZEOF_MISMATCH (CWE-398):
freeradius-server-3.0.4rc2/src/main/radsniff.c:972:
suspicious_pointer_arithmetic: Adding "80UL /* sizeof (request->capture) */" to
pointer "request->capture" of type "rs_capture_t [5]" is suspicious because
adding an integral value to this pointer automatically scales that value by the
size, 16 bytes, of the pointed-to type, "rs_capture_t".  Most likely, you
intended to use the number of elements in "request->capture" rather than its
size in bytes.

Nikolai Kondrashov (via Alan T. DeKok)@2014-09-09T19:30:54Z
Files modified:
	* src/main/radsniff.c

Commit diff:
https://github.com/FreeRADIUS/freeradius-server/commit/c2a3e985a506975aacdea1b65997e1d5b70648d0
====== 
Fix typo.  Closes #784

Alan T. DeKok at 2014-09-09T15:15:31Z
Files modified:
	* raddb/mods-available/dhcp_sqlippool

Commit diff:
https://github.com/FreeRADIUS/freeradius-server/commit/0eae1dfd0aec6acb0d9d4d035ece13872c7d6517
====== 
Fix typo.  Closes #783

Alan T. DeKok at 2014-09-09T14:15:59Z
Files modified:
	* raddb/mods-config/sql/ippool-dhcp/mysql/queries.conf

Commit diff:
https://github.com/FreeRADIUS/freeradius-server/commit/0ef87564fe67e1d6484b4a29e2b9187ada3ffe03
====== 
TLV memory should be zerod in DHCP suboption encoder

Arran Cudbard-Bell at 2014-09-09T14:07:30Z
Files modified:
	* src/modules/proto_dhcp/dhcp.c

Commit diff:
https://github.com/FreeRADIUS/freeradius-server/commit/e890db041493c08cffe1e624a19303138ccda490
====== 
Allow bootstrap from multiple files in sqlite driver

Arran Cudbard-Bell at 2014-09-09T03:57:00Z
Files modified:
	* src/modules/rlm_sql/drivers/rlm_sql_sqlite/rlm_sql_sqlite.c

Commit diff:
https://github.com/FreeRADIUS/freeradius-server/commit/549916e690292e8d9be5780c94d3d7949334a7ae
====== 
Generate snakeoil certs on package install (debian)

Arran Cudbard-Bell at 2014-09-09T03:56:46Z
Files modified:
	* debian/freeradius-config.postinst
	* debian/freeradius.postinst
	* debian/rules
	* raddb/all.mk

Commit diff:
https://github.com/FreeRADIUS/freeradius-server/commit/c9b1c78c0a4df9164d114be588eda0def278ffd4
====== 
Line endings

Arran Cudbard-Bell at 2014-09-09T03:56:43Z
Files modified:
	* debian/rules

Commit diff:
https://github.com/FreeRADIUS/freeradius-server/commit/213e447631072ff0e794dec621200d9d5878e99c
====== 
Quiet gcc

Arran Cudbard-Bell at 2014-09-09T03:56:39Z
Files modified:
	* src/main/tmpl.c

Commit diff:
https://github.com/FreeRADIUS/freeradius-server/commit/bfb61c27fa3919ccc20ca538d6977899edd71ee9
====== 
-- 
This commit summary was generated @2014-09-10T00:00:01Z by lgfeed version 0.00 (https://github.com/arr2036/lgfeed).


More information about the Freeradius-Devel mailing list