tools: Allow patlooptest to activate and handle buffer events

The new buffer events code introduced in revision 9905 gives userspace
processes an interface to activate detection of buffer over and underflows.
This change allows patlooptest to take advantage of that feature to better
inform users of the cause of pattern errors.

Acked-by: Shaun Ruffell <sruffell@digium.com>
(original patch by Matt Fredrickson)


git-svn-id: http://svn.astersk.org/svn/dahdi/tools/trunk@9909 17933a7a-c749-41c5-a318-cba88f637d49
remotes/origin/2.5.y
Kinsey Moore 14 years ago
parent ad02c5b314
commit 4c177ef39c

@ -208,12 +208,13 @@ int main(int argc, char *argv[])
outbuf[x] = c1++;
}
write_again:
res = write(fd,outbuf,bs);
if (res != bs) {
printf("Res is %d: %s\n", res, strerror(errno));
ioctl(fd, DAHDI_GETEVENT, &x);
printf("Event: %d\n", x);
exit(1);
printf("W: Res is %d: %s\n", res, strerror(errno));
ioctl(fd, DAHDI_GETEVENT, &x);
printf("Event: %d\n", x);
goto write_again;
}
/* If this is the start of the test then skip a number of packets before test results */
@ -225,13 +226,18 @@ int main(int argc, char *argv[])
if (!skipcount) {
printf("Going for it...\n");
}
i = 1;
ioctl(fd,DAHDI_BUFFER_EVENTS, &i);
continue;
}
read_again:
res = read(fd, inbuf, bs);
if (res < bs) {
printf("read error: returned %d\n", res);
exit(1);
printf("R: Res is %d\n", res);
ioctl(fd, DAHDI_GETEVENT, &x);
printf("Event: %d\n", x);
goto read_again;
}
/* If first time through, set byte that is used to test further bytes */
if (!setup) {

Loading…
Cancel
Save