diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | netem/normal.c | 15 | ||||
-rw-r--r-- | netem/paretonormal.c | 14 |
3 files changed, 12 insertions, 21 deletions
@@ -1,3 +1,7 @@ +2005-03-29 Stephen Hemminger <shemminger@dxpl.pdx.osdl.net> + + * switch to stack for netem tables + 2005-03-18 Stephen Hemminger <shemminger@osdl.org> * add -force option to batch mode diff --git a/netem/normal.c b/netem/normal.c index e6683db8..dbdebb1d 100644 --- a/netem/normal.c +++ b/netem/normal.c @@ -20,21 +20,16 @@ normal(double x, double mu, double sigma) return .5 + .5*erf((x-mu)/(sqrt(2.0)*sigma)); } + int main(int argc, char **argv) { - double x, *table; int i, n; - - table = calloc(sizeof(double), TABLESIZE+1); - if (!table) { - fprintf(stderr, "Not enough memory\n"); - return 1; - } - + double x; + double table[TABLESIZE+1]; for (x = -10.0; x < 10.05; x += .00005) { - i = (int)rint(TABLESIZE*normal(x, 0.0, 1.0)); + i = rint(TABLESIZE * normal(x, 0.0, 1.0)); table[i] = x; } @@ -51,6 +46,6 @@ main(int argc, char **argv) n = 0; } } - free(table); + return 0; } diff --git a/netem/paretonormal.c b/netem/paretonormal.c index c793df6d..528de78c 100644 --- a/netem/paretonormal.c +++ b/netem/paretonormal.c @@ -29,7 +29,6 @@ normal(double x, double mu, double sigma) return .5 + .5*erf((x-mu)/(sqrt(2.0)*sigma)); } - static const double a=3.0; static int @@ -50,18 +49,12 @@ paretovalue(int i) int main(int argc, char **argv) { - double x; - double *table; int i,n; - - table = calloc(TABLESIZE+1, sizeof(double)); - if (!table) { - fprintf(stderr, "Out of memory!\n"); - exit(1); - } + double x; + double table[TABLESIZE]; for (x = -10.0; x < 10.05; x += .00005) { - i = (int)rint(TABLESIZE*normal(x, 0.0, 1.0)); + i = rint(TABLESIZE*normal(x, 0.0, 1.0)); table[i] = x; } printf( @@ -84,7 +77,6 @@ main(int argc, char **argv) n = 0; } } - free(table); return 0; } |