add directory study
This commit is contained in:
@@ -0,0 +1,56 @@
|
||||
/* This program tests the basic RPC to see if it works. */
|
||||
|
||||
#include <amoeba.h>
|
||||
#include "header.h"
|
||||
|
||||
#define MAX_TRIALS 1000
|
||||
|
||||
char buffer1[BUF_SIZE], buffer2[BUF_SIZE];
|
||||
|
||||
main(argc, argv)
|
||||
int argc;
|
||||
char *argv[];
|
||||
{
|
||||
|
||||
header hdr1, hdr2;
|
||||
int cnt, i, base = 0, size, errors, blocks, iterations = 0;
|
||||
long bad_trans = 0;
|
||||
|
||||
if (argc != 2) {
|
||||
printf("Usage: client1 portname\n");
|
||||
exit(1);
|
||||
}
|
||||
|
||||
/* Copy the filename into the start of the buffer. */
|
||||
strncpy(&hdr1.h_port, argv[1], PORTSIZE);
|
||||
hdr1.h_command = WORK;
|
||||
|
||||
printf("Number of tests performed = %5d ", 0);
|
||||
|
||||
while (iterations < MAX_TRIALS) {
|
||||
/* Initialize the buffer. */
|
||||
for (i = 0; i < BUF_SIZE; i++) buffer1[i] = base + i;
|
||||
|
||||
size = trans(&hdr1, buffer1, BUF_SIZE, &hdr2, buffer2, BUF_SIZE);
|
||||
if (size < 0) {
|
||||
printf("\nTransaction failed. Error = %d. ", size);
|
||||
printf("Hit F1 to see if AMTASK running.\n");
|
||||
exit(1);
|
||||
}
|
||||
|
||||
/* Check reply. */
|
||||
errors = 0;
|
||||
for (i = 0; i < BUF_SIZE; i++)
|
||||
if ( (buffer2[i]&0377) != ( (buffer1[i]+1)&0377)) errors++;
|
||||
if (errors > 0) bad_trans++;
|
||||
blocks++;
|
||||
base++;
|
||||
iterations++;
|
||||
if (iterations % 10 == 0) printf("\b\b\b\b\b\b%5d ", iterations);
|
||||
}
|
||||
|
||||
/* Test done. Send null trans to tell server. Report on errors. */
|
||||
hdr1.h_command = QUIT;
|
||||
trans(&hdr1, buffer1, 0, &hdr2, buffer2, BUF_SIZE);
|
||||
printf("\b. Number of errors = %d.\n", bad_trans);
|
||||
}
|
||||
Reference in New Issue
Block a user