* random.c, spgrid.[ch]: Fix warnings with hope that I didn't broke
anything. These floats to longs and vice versa casts are starnge
indeed.
* isis_pdu.c: As we don't use %z for size_t for now because we support
older compilers, cast them to unsigned long.
Also fix previous changelog entry. Isisd compiles cleanly now again.
diff --git a/isisd/topology/random.c b/isisd/topology/random.c
index d4ef995..6ee17a0 100644
--- a/isisd/topology/random.c
+++ b/isisd/topology/random.c
@@ -10,11 +10,11 @@
#include <sys/types.h>
#include <sys/times.h>
-float timer()
+unsigned long timer()
{ struct tms hold;
times(&hold);
- return (float)(hold.tms_utime) / 60.0;
+ return (unsigned long) ((float) (hold.tms_utime) / 60.0);
}
@@ -84,6 +84,7 @@
return (long) internal_seed ;
}
+#if 0 /* Not used. */
/*********************************************************************/
/* */
/* computer independent variant of irand */
@@ -106,14 +107,14 @@
internal_seed = ( (((is2 * A1) + (is1 * A2))% T16 )* T15 + (is2 * A2) ) & B;
return (long) ( internal_seed ) ;
}
-
+#endif
/*********************************************************************/
double rand01()
-{ return (double) irand() / BF ;
+{ return (double) (irand() / BF) ;
}
/*********************************************************************/
diff --git a/isisd/topology/spgrid.c b/isisd/topology/spgrid.c
index bde0f95..a1aa6d7 100644
--- a/isisd/topology/spgrid.c
+++ b/isisd/topology/spgrid.c
@@ -26,7 +26,7 @@
#define NODE( x, y ) (x*Y + y + 1)
-char *graph_type[] = {
+const char *graph_type[] = {
"double cycle",
"cycle",
"path"
@@ -227,7 +227,7 @@
/* parsing parameters */
/* checks the validity of incoming parameters */
int
-spgrid_check_params ( struct vty *vty, int argc, char **argv)
+spgrid_check_params ( struct vty *vty, int argc, const char **argv)
{
/* initialized by default values */
ext=0;
@@ -341,11 +341,11 @@
switch ( args[2] ) {
case 'l': /* upper bound of the interval */
cl_f = 1;
- cl = (long) atof ( &args[3] );
+ cl = atol ( &args[3] );
break;
case 'm': /* lower bound */
cm_f = 1;
- cm = (long ) atof ( &args[3] );
+ cm = atol ( &args[3] );
break;
case 'c': /* type - cycle */
cw_f = 1;
@@ -372,15 +372,15 @@
{
case 'l': /* upper bound of the interval */
al_f = 1;
- al = (long) atof ( &args[3] );
+ al = atol ( &args[3] );
break;
case 'm': /* lower bound */
am_f = 1;
- am = (long ) atof ( &args[3] );
+ am = atol ( &args[3] );
break;
case 'x': /* number of additional arcs */
ax_f = 1;
- ax = (long ) atof ( &args[3] );
+ ax = atol ( &args[3] );
if ( ax < 0 )
{
usage (vty);
@@ -404,11 +404,11 @@
{
case 'l': /* upper bound */
il_f = 1;
- il = (long) atof ( &args[3] );
+ il = atol ( &args[3] );
break;
case 'm': /* lower bound */
im_f = 1;
- im = (long ) atof ( &args[3] );
+ im = atol ( &args[3] );
break;
case 'n': /* additional length: l *= in*|i1-i2| */
in_f = 1;
@@ -452,11 +452,11 @@
{
case 'l': /* upper bound of art. arc */
sl_f = 1;
- sl = (long) atof ( &args[3] );
+ sl = atol ( &args[3] );
break;
case 'm': /* lower bound of art. arc */
sm_f = 1;
- sm = (long) atof ( &args[3] );
+ sm = atol ( &args[3] );
break;
default: /* unknown switch value */
usage (vty);
@@ -473,11 +473,11 @@
{
case 'l': /* upper bound */
pl_f = 1;
- pl = (long) atof ( &args[3] );
+ pl = atol ( &args[3] );
break;
case 'm': /* lower bound */
pm_f = 1;
- pm = (long ) atof ( &args[3] );
+ pm = atol ( &args[3] );
break;
case 'n': /* additional: p *= pn*(x+1) */
pn_f = 1;
diff --git a/isisd/topology/spgrid.h b/isisd/topology/spgrid.h
index f96c00f..1c1ceea 100644
--- a/isisd/topology/spgrid.h
+++ b/isisd/topology/spgrid.h
@@ -33,7 +33,7 @@
};
int gen_spgrid_topology (struct vty *vty, struct list *topology);
-int spgrid_check_params (struct vty *vty, int argc, char **argv);
+int spgrid_check_params (struct vty *vty, int argc, const char **argv);
#endif /* _ZEBRA_ISIS_TOPOLOGY_SPGRID_H */