Example #1
0
void start_test(int role)
{
	int sk;
	int i = 0;
	
	DEBUG_PRINT(DEBUG_NONE, "\nStarting tests...\n");

	repeat_count = repeat;


	if (MIXED == role) {
		repeat_count = repeat_count * msg_cnt;  /* Repeat per assoc. */
		mixed_mode_test();
		return;
	}

	sk = socket_r();
	bind_r(sk, &s_loc);

	/* Do we need to do bindx() to add any additional addresses? */
	if (bindx_add_addrs)
		bindx_r(sk, bindx_add_addrs, bindx_add_count,
			   SCTP_BINDX_ADD_ADDR);

	if (role == SERVER) {
		listen_r(sk, 100);
	} else {
		if (socket_type == SOCK_STREAM && connectx_count == 0)
			connect_r(sk, (struct sockaddr *)&s_rem, r_len);

		if (connectx_count != 0)
			connectx_r(sk, connectx_addrs, connectx_count);
	}

	if (!debug_level) {
		printf("     ");
	}

	for(i = 0; i < repeat_count; i++) {
		
		if (role == SERVER) {
			DEBUG_PRINT(DEBUG_NONE,
				    "Server: Receiving packets.\n");
			server(sk);
		} else {
			DEBUG_PRINT(DEBUG_NONE,
				    "Client: Sending packets.(%d/%d)\n",
		    		    i+1, repeat_count);
			client(sk);
		}

		fflush(stdout);
	}

	close_r(sk);

} /* start_test() */
Example #2
0
void start_test(int role)
{
	int sk;
	int i = 0;
	
	DEBUG_PRINT(DEBUG_NONE, "\nStarting tests...\n");

	repeat_count = repeat;


	if (MIXED == role) {
		repeat_count = repeat_count * msg_cnt;  /* Repeat per assoc. */
		mixed_mode_test();
		return;
	}

	sk = socket_r();
	bind_r(sk, &s_loc);

	if (role == SERVER) {
		listen_r(sk, 100);
	}

	if (!debug_level) {
		printf("     ");
	}

	for(i = 0; i < repeat_count; i++) {
		
		if (role == SERVER) {
			DEBUG_PRINT(DEBUG_NONE,
				    "Server: Receiving packets.\n");
			server(sk);
		} else {
			DEBUG_PRINT(DEBUG_NONE,
				    "Client: Sending packets.(%d/%d)\n",
		    		    i+1, repeat_count);
			client(sk);
		}

		fflush(stdout);
	}

	close_r(sk);

} /* start_test() */