Commit report for v3.0.x 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:07Z
Files modified:
	* src/modules/rlm_realm/.gitignore

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

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

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

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

Commit diff:
https://github.com/FreeRADIUS/freeradius-server/commit/7ffad000596e2bda17afb09a3f2824bbf7e5ce67
====== 
Free home_servers with talloc_free

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

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

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

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

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

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

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

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

Arran Cudbard-Bell at 2014-09-09T21:18:17Z
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/1e8ccaedafb73aabcf5b259e6f4b26e5d203a73f
====== 
Correctly allocate unknown sub-options

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

Commit diff:
https://github.com/FreeRADIUS/freeradius-server/commit/468a63cb515195844c27d04b9a3a355695c067e8
====== 
Merge pull request #787 from spbnick/coverity_fixes1

Coverity fixes part 1

Alan DeKok at 2014-09-09T19:29:00Z
Files modified:
	* src/main/listen.c
	* src/main/radsniff.c
	* src/modules/proto_dhcp/dhcp.c
	* src/modules/proto_dhcp/dhcpclient.c
	* src/modules/proto_dhcp/dhcpd.c

Commit diff:
https://github.com/FreeRADIUS/freeradius-server/commit/fd2348e2d63a0b84d1ec01db0276d44ec31af418
====== 
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 at 2014-09-09T17:06:27Z
Files modified:
	* src/main/listen.c

Commit diff:
https://github.com/FreeRADIUS/freeradius-server/commit/e431472f4db2998aef52084ccf906e07e8eec2e7
====== 
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 at 2014-09-09T17:06:27Z
Files modified:
	* src/modules/proto_dhcp/dhcpclient.c

Commit diff:
https://github.com/FreeRADIUS/freeradius-server/commit/9984ca85c77282928f424127c240a4764e3dcd4f
====== 
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 at 2014-09-09T17:06:27Z
Files modified:
	* src/modules/proto_dhcp/dhcpd.c

Commit diff:
https://github.com/FreeRADIUS/freeradius-server/commit/4de0473f1a2f63a91450d550c3eabd4d60776adf
====== 
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 at 2014-09-09T17:06:27Z
Files modified:
	* src/modules/proto_dhcp/dhcp.c

Commit diff:
https://github.com/FreeRADIUS/freeradius-server/commit/6d1c8c3d758d3f7f479c1b2105b646c594297609
====== 
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 at 2014-09-09T17:06:27Z
Files modified:
	* src/main/radsniff.c

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

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

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

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

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

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

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

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

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

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

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

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

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

Arran Cudbard-Bell at 2014-09-08T18:09:41Z
Files modified:
	* src/main/tmpl.c

Commit diff:
https://github.com/FreeRADIUS/freeradius-server/commit/15b51949c7cf2edc885e51610ef9de0b8e59377e
====== 
-- 
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