]> Zhao Yanbai Git Server - minix.git/commitdiff
dpeth: resolve Coverity warnings
authorDavid van Moolenbroek <david@minix3.org>
Fri, 3 Aug 2012 15:48:54 +0000 (15:48 +0000)
committerDavid van Moolenbroek <david@minix3.org>
Mon, 6 Aug 2012 16:18:35 +0000 (16:18 +0000)
drivers/dpeth/dp.c

index 240bc0c4bb62d02355567ad4d95fa3f095fd2ff7..818d3d181980d54aab022d076739b3c0664146aa 100644 (file)
@@ -87,7 +87,7 @@ static void dp_confaddr(dpeth_t * dep)
   int ix;
   long val;
 
-  strcpy(ea_key, "DPETH0_EA");
+  strlcpy(ea_key, "DPETH0_EA", sizeof(ea_key));
   ea_key[5] += de_instance;
 
   for (ix = 0; ix < SA_ADDR_LEN; ix++) {
@@ -114,7 +114,7 @@ static void update_conf(dpeth_t * dep, const dp_conf_t * dcp)
   char ec_key[16];
   long val;
 
-  strcpy(ec_key, "DPETH0");
+  strlcpy(ec_key, "DPETH0", sizeof(ec_key));
   ec_key[5] += de_instance;
 
   dep->de_mode = DEM_SINK;
@@ -216,7 +216,8 @@ static void do_first_init(dpeth_t *dep, const dp_conf_t *dcp)
    * automatically. Return the IRQ line number when an interrupt occurs.
    */
   dep->de_hook = dep->de_irq;
-  sys_irqsetpolicy(dep->de_irq, 0 /*IRQ_REENABLE*/, &dep->de_hook);
+  if (sys_irqsetpolicy(dep->de_irq, 0 /*IRQ_REENABLE*/, &dep->de_hook) != OK)
+       panic("unable to set IRQ policy");
   dep->de_int_pending = FALSE;
   sys_irqenable(&dep->de_hook);
 
@@ -241,7 +242,7 @@ static void do_init(const message * mp)
   confnr = MIN(de_instance, DP_CONF_NR-1);
 
   dcp = &dp_conf[confnr];
-  strcpy(dep->de_name, DevName);
+  strlcpy(dep->de_name, DevName, sizeof(dep->de_name));
   dep->de_name[4] = '0' + de_instance;
 
   if (dep->de_mode == DEM_DISABLED) {