Skip to content

Commit

Permalink
Fix warning "not checking return value of fscanf" in lib/utils.c: get…
Browse files Browse the repository at this point in the history
…_psched_settings

Also, change internal variables type from uint32_t to unsigned int.
Correct scanf format string should contain "SCNx32" instead of just "x",
but I decide not to fix that and just changed variable type.
  • Loading branch information
socketpair committed Aug 29, 2012
1 parent 8cd2f57 commit a2b23ff
Showing 1 changed file with 10 additions and 4 deletions.
14 changes: 10 additions & 4 deletions lib/utils.c
Expand Up @@ -28,6 +28,7 @@
#include <netlink/netlink.h>
#include <netlink/utils.h>
#include <linux/socket.h>
#include <stdlib.h> /* exit() */

/**
* Global variable indicating the desired level of debugging output.
Expand Down Expand Up @@ -421,10 +422,15 @@ static void __init get_psched_settings(void)
strncpy(name, "/proc/net/psched", sizeof(name) - 1);

if ((fd = fopen(name, "r"))) {
uint32_t ns_per_usec, ns_per_tick, nom, denom;

fscanf(fd, "%08x %08x %08x %08x",
&ns_per_usec, &ns_per_tick, &nom, &denom);
unsigned int ns_per_usec, ns_per_tick, nom, denom;

if (fscanf(fd, "%08x %08x %08x %08x",
&ns_per_usec, &ns_per_tick, &nom, &denom) != 4) {
fprintf(stderr, "Fatal error: can not read psched settings from \"%s\". " \
"Try to set TICKS_PER_USEC, PROC_NET_PSCHED or PROC_ROOT " \
"environment variables\n", name);
exit(1);
}

ticks_per_usec = (double) ns_per_usec /
(double) ns_per_tick;
Expand Down

0 comments on commit a2b23ff

Please sign in to comment.