usability fixes and removal of unfinished test items

This commit is contained in:
Joseph Henry
2016-07-17 16:00:24 -07:00
parent cac337ee1f
commit e352c2a613
22 changed files with 100 additions and 861 deletions

View File

@@ -1,74 +0,0 @@
#include <sys/socket.h>
#include <arpa/inet.h>
#include <netdb.h>
#include <sys/socket.h>
#include <stdio.h>
#include <unistd.h>
int main()
{
printf("cpp_udp_socket_client_test():\n");
ssize_t n_sent;
int sock = -1;
struct sockaddr_in server;
char buf[64];
if(sock == -1) {
sock = socket(AF_INET , SOCK_DGRAM , 0);
if (sock == -1) {
printf("error creating socket\n");
return 1;
}
}
server.sin_addr.s_addr = inet_addr("10.5.5.47");
server.sin_family = AF_INET;
server.sin_port = htons(8888);
//char *buf = "Welcome to the Machine\n";
memcpy(buf, "Welcome to the Machine", sizeof("Welcome to the Machine"));
printf("sizeof(buf) = %d\n", sizeof(buf));
if (connect(sock , (struct sockaddr *)&server , sizeof(server)) < 0) {
printf("api_test: error while connecting.\n");
return 1;
}
// Repeatedly send UDP datagram
char data[1024];
memset(data, 0, sizeof(data));
int count =0;
while(1)
{
count++;
usleep(1000);
n_sent = send(sock,data,sizeof(data),0);
if (n_sent < 0) {
perror("Problem sending data");
return 1;
}
if (n_sent != sizeof(buf))
printf("sendto sent %d bytes\n",(int)n_sent);
printf("n_sent = %d, count = %d\n", n_sent,count);
}
return 1;
socklen_t recv_addr_len;
// Clear address info for RX test
server.sin_addr.s_addr = inet_addr("");
server.sin_port = htons(-1);
while (1) {
n_sent=recvfrom(sock,buf,sizeof(buf),0,(struct sockaddr *)&server,&recv_addr_len);
printf("Got a datagram from %s port %d\n", inet_ntoa(server.sin_addr), ntohs(server.sin_port));
if (n_sent<0) {
perror("Error receiving data");
}
else {
printf("RXed: %s\n", buf);
}
}
return 1;
}

View File

@@ -1,71 +0,0 @@
#include <stdio.h> /* standard C i/o facilities */
#include <stdlib.h> /* needed for atoi() */
#include <unistd.h> /* defines STDIN_FILENO, system calls,etc */
#include <sys/types.h> /* system data type definitions */
#include <sys/socket.h> /* socket specific definitions */
#include <netinet/in.h> /* INET constants and stuff */
#include <arpa/inet.h> /* IP address conversion stuff */
#include <netdb.h> /* gethostbyname */
/* this routine echos any messages (UDP datagrams) received */
#define MAXBUF 1024*10
void echo( int sd ) {
int len,n;
char bufin[MAXBUF];
struct sockaddr_in remote;
/* need to know how big address struct is, len must be set before the
call to recvfrom!!! */
len = sizeof(remote);
long count = 0;
while (1) {
sleep(1);
count++;
n=recvfrom(sd,bufin,MAXBUF,0,(struct sockaddr *)&remote,&len);
/* print out the address of the sender */
printf("Got a datagram from %s port %d\n",
inet_ntoa(remote.sin_addr), ntohs(remote.sin_port));
if (n<0) {
perror("Error receiving data");
} else {
printf("GOT %d BYTES (count = %d)\n",n, count);
sendto(sd,bufin,n,0,(struct sockaddr *)&remote,len);
}
}
}
int main() {
int ld, length;
struct sockaddr_in skaddr;
if ((ld = socket( PF_INET, SOCK_DGRAM, 0 )) < 0) {
printf("Problem creating socket\n");
exit(1);
}
skaddr.sin_family = AF_INET;
skaddr.sin_addr.s_addr = htonl(INADDR_ANY);
skaddr.sin_port = htons(8888);
if (bind(ld, (struct sockaddr *) &skaddr, sizeof(skaddr))<0) {
printf("Problem binding\n");
exit(0);
}
/*
length = sizeof( skaddr );
if (getsockname(ld, (struct sockaddr *) &skaddr, &length)<0) {
printf("Error getsockname\n");
exit(1);
}
*/
printf("The server UDP port number is %d\n",ntohs(skaddr.sin_port));
/* Go echo every datagram we get */
echo(ld);
return 0;
}

View File

@@ -1,5 +0,0 @@
gcc kq_test_client.c ../../kq.c ../../zt_api.c ../../RPC.c -DSDK_DEBUG -DNETCON_INTERCEPT -o kq_test_client
#gcc kq_test_server.c ../../kq.c -o kq_test_server
gcc server.c -o server
#gcc client.c -o client

View File

@@ -1,124 +0,0 @@
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netdb.h>
#include <fcntl.h>
#include <unistd.h>
#include <sys/event.h>
#include <sys/time.h>
#include <err.h>
#include <errno.h>
#include <pthread.h>
#include <time.h>
void monitor_fds();
#define MIN_FD 0
#define MAX_FD_SCAN_SZ 10
void die(const char *str) {
perror(str);
exit(EXIT_FAILURE);
}
int make_nonblocking(int fd) {
int flags;
if (-1 == (flags = fcntl(fd, F_GETFL)))
return -1;
flags |= O_NONBLOCK;
if (-1 == fcntl(fd, F_SETFL, flags))
return -1;
return 0;
}
void changeling()
{
pthread_t thread;
printf("changeling()\n");
int i = 7;
if(pthread_create(&thread, NULL, monitor_fds, (void *)i)) {
die("unable to start changeling thread\n");
}
}
struct timespec tmout = { 0, /* block for 5 seconds at most */
500000 }; /* nanoseconds */
void monitor_fds(){
//sleep(3);
printf("monitor_fds()...\n");
struct kevent change[MAX_FD_SCAN_SZ], event[MAX_FD_SCAN_SZ];
int sockfd, nev, kq;
ssize_t nbytes;
int error;
char buf[BUFSIZ];
if (-1 == (kq = kqueue()))
die("kqueue()");
for(int i=MIN_FD;i<MAX_FD_SCAN_SZ; i++)
{
printf("registering (%d)\n", i);
EV_SET(&change[i-MIN_FD], i, EVFILT_READ, EV_ADD | EV_ENABLE, 0, 0, 0);
//if (-1 == kevent(kq, change, 2, NULL, 0, NULL))
// printf(" unable to register (%d)\n", i);
}
//EV_SET(&change[0], STDIN_FILENO, EVFILT_READ, EV_ADD | EV_ENABLE, 0, 0, 0);
//EV_SET(&change[1], sockfd, EVFILT_READ, EV_ADD | EV_ENABLE, 0, 0, 0);
if (-1 == kevent(kq, change, 2, NULL, 0, NULL))
die("1kevent()");
for (;;)
{
//usleep(50);
//printf("blocking in kevent()\n");
if (-1 == (nev = kevent(kq, NULL, 0, event, 2, NULL)))
die("2kevent()");
if(nev)
{
printf("kevent() returned %d\n", nev);
for (int i = 0; i < nev; i++)
{
printf("event[%d].ident = %d\n", i, event[i].ident);
/*
if (event[i].ident == STDIN_FILENO)
{
fgets(buf, sizeof(buf), stdin);
nbytes = send(sockfd, buf, strlen(buf), 0);
if (-1 == nbytes)
if (EWOULDBLOCK != errno)
die("send()");
}
else
{
while ((nbytes = recv(sockfd, buf, sizeof(buf), 0)) > 0)
{
if (nbytes != write(STDOUT_FILENO, buf, nbytes))
{
die("write()");
}
}
}
*/
}
}
}
}

View File

@@ -1 +0,0 @@
int changeling();

View File

@@ -1,62 +0,0 @@
/*
C ECHO client example using sockets
*/
#include <stdio.h> //printf
#include <string.h> //strlen
#include <sys/socket.h> //socket
#include <arpa/inet.h> //inet_addr
int main(int argc , char *argv[])
{
int sock;
struct sockaddr_in server;
char message[1000] , server_reply[2000];
//Create socket
sock = socket(AF_INET , SOCK_STREAM , 0);
if (sock == -1)
{
printf("Could not create socket");
}
puts("Socket created");
server.sin_addr.s_addr = inet_addr("127.0.0.1");
server.sin_family = AF_INET;
server.sin_port = htons( 8889 );
//Connect to remote server
if (connect(sock , (struct sockaddr *)&server , sizeof(server)) < 0)
{
perror("connect failed. Error");
return 1;
}
puts("Connected\n");
//keep communicating with server
while(1)
{
printf("Enter message : ");
scanf("%s" , message);
//Send some data
if(send(sock , message , strlen(message) , 0) < 0)
{
puts("Send failed");
return 1;
}
//Receive a reply from the server
if(recv(sock , server_reply , 2000 , 0) < 0)
{
puts("recv failed");
break;
}
puts("Server reply :");
puts(server_reply);
}
close(sock);
return 0;
}

View File

@@ -1,72 +0,0 @@
/*
C ECHO client example using sockets
*/
#include <stdio.h> //printf
#include <string.h> //strlen
#include <sys/socket.h> //socket
#include <arpa/inet.h> //inet_addr
#include "../../kq.h"
int main(int argc , char *argv[])
{
changeling();
sleep(2);
int sock;
struct sockaddr_in server;
char message[1000] , server_reply[2000];
//Create socket
sock = socket(AF_INET , SOCK_STREAM , 0);
if (sock == -1)
{
printf("Could not create socket");
}
printf("socket() = %d\n", sock);
sleep(5);
server.sin_addr.s_addr = inet_addr("127.0.0.1");
server.sin_family = AF_INET;
server.sin_port = htons( 8889 );
printf("attempting to connect..\n");
//Connect to remote server
if (connect(sock , (struct sockaddr *)&server , sizeof(server)) < 0)
{
perror("connect failed. Error");
return 1;
}
printf("Connected\n");
//keep communicating with server
while(1)
{
printf("Enter message : ");
scanf("%s" , message);
//Send some data
if(send(sock , message , strlen(message) , 0) < 0)
{
puts("Send failed");
return 1;
}
//Receive a reply from the server
if(recv(sock , server_reply , 2000 , 0) < 0)
{
puts("recv failed");
break;
}
puts("Server reply :");
puts(server_reply);
}
close(sock);
return 0;
}

View File

@@ -1,79 +0,0 @@
#include <stdio.h>
#include <string.h>
#include <sys/socket.h>
#include <arpa/inet.h>
#include <unistd.h>
#include "../../kq.h"
#include <time.h>
int main(int argc , char *argv[])
{
changeling();
sleep(3);
int socket_desc , client_sock , c , read_size;
struct sockaddr_in server , client;
char client_message[2000];
//Create socket
socket_desc = socket(AF_INET , SOCK_STREAM , 0);
if (socket_desc == -1)
{
printf("Could not create socket");
}
printf("Socket (%d)\n", socket_desc);
//Prepare the sockaddr_in structure
server.sin_family = AF_INET;
server.sin_addr.s_addr = INADDR_ANY;
server.sin_port = htons( 8889 );
//Bind
int bind_fd;
if( (bind_fd = bind(socket_desc,(struct sockaddr *)&server , sizeof(server)) < 0))
{
//print the error message
perror("bind failed. Error");
return 1;
}
printf("bound\n");
//Listen
listen(socket_desc , 3);
//Accept and incoming connection
puts("Waiting for incoming connections...");
c = sizeof(struct sockaddr_in);
//accept connection from an incoming client
client_sock = accept(socket_desc, (struct sockaddr *)&client, (socklen_t*)&c);
if (client_sock < 0)
{
perror("accept failed");
return 1;
}
printf("Connection accepted (%d)\n", client_sock);
//Receive a message from client
while( (read_size = recv(client_sock , client_message , 2000 , 0)) > 0 )
{
//Send the message back to client
write(client_sock , client_message , strlen(client_message));
}
if(read_size == 0)
{
puts("Client disconnected");
sleep(1);
//fflush(stdout);
}
else if(read_size == -1)
{
perror("recv failed");
}
return 0;
}

View File

@@ -1,73 +0,0 @@
/*
C socket server example
*/
#include <stdio.h>
#include <string.h> //strlen
#include <sys/socket.h>
#include <arpa/inet.h> //inet_addr
#include <unistd.h> //write
int main(int argc , char *argv[])
{
int socket_desc , client_sock , c , read_size;
struct sockaddr_in server , client;
char client_message[2000];
//Create socket
socket_desc = socket(AF_INET , SOCK_STREAM , 0);
if (socket_desc == -1)
{
printf("Could not create socket");
}
puts("Socket created");
//Prepare the sockaddr_in structure
server.sin_family = AF_INET;
server.sin_addr.s_addr = INADDR_ANY;
server.sin_port = htons( 8889 );
//Bind
if( bind(socket_desc,(struct sockaddr *)&server , sizeof(server)) < 0)
{
//print the error message
perror("bind failed. Error");
return 1;
}
puts("bind done");
//Listen
listen(socket_desc , 3);
//Accept and incoming connection
puts("Waiting for incoming connections...");
c = sizeof(struct sockaddr_in);
//accept connection from an incoming client
client_sock = accept(socket_desc, (struct sockaddr *)&client, (socklen_t*)&c);
if (client_sock < 0)
{
perror("accept failed");
return 1;
}
puts("Connection accepted");
//Receive a message from client
while( (read_size = recv(client_sock , client_message , 2000 , 0)) > 0 )
{
//Send the message back to client
write(client_sock , client_message , strlen(client_message));
}
if(read_size == 0)
{
puts("Client disconnected");
fflush(stdout);
}
else if(read_size == -1)
{
perror("recv failed");
}
return 0;
}

View File

@@ -14,7 +14,7 @@ int main(int argc, char * argv[])
printf("usage: udp_client <addr> <port>\n");
return 0;
}
int sock = -1, int port = atoi(argv[1]);
int sock = -1, port = atoi(argv[1]);
ssize_t n_sent;
struct sockaddr_in server;
char buf[64];
@@ -36,7 +36,7 @@ int main(int argc, char * argv[])
}
// TX
char *msg = "Welcome to the Machine"
char *msg = "Welcome to the Machine";
int count = 0;
while(1) {

View File

@@ -42,7 +42,7 @@ int main(int argc, char *argv[]) {
printf("usage: udp_server <port>\n");
exit(0);
}
int ld, length, int port = atoi(argv[1]);
int ld, length, port = atoi(argv[1]);
struct sockaddr_in skaddr;
struct sockaddr_in skaddr2;
@@ -67,7 +67,7 @@ int main(int argc, char *argv[]) {
exit(1);
}
// Display address:port to verify it was sent over RPC correctly
int port = ntohs(skaddr2.sin_port);
port = ntohs(skaddr2.sin_port);
int ip = skaddr2.sin_addr.s_addr;
unsigned char d[4];
d[0] = ip & 0xFF;

View File

@@ -1,62 +0,0 @@
/*
C ECHO client example using sockets
*/
#include<stdio.h> //printf
#include<string.h> //strlen
#include<sys/socket.h> //socket
#include<arpa/inet.h> //inet_addr
int main(int argc , char *argv[])
{
int sock;
struct sockaddr_in server;
char message[1000] , server_reply[2000];
//Create socket
sock = socket(AF_INET , SOCK_STREAM , 0);
if (sock == -1)
{
printf("Could not create socket");
}
puts("Socket created");
server.sin_addr.s_addr = inet_addr("127.0.0.1");
server.sin_family = AF_INET;
server.sin_port = htons( 8888 );
//Connect to remote server
if (connect(sock , (struct sockaddr *)&server , sizeof(server)) < 0)
{
perror("connect failed. Error");
return 1;
}
puts("Connected\n");
//keep communicating with server
while(1)
{
printf("Enter message : ");
scanf("%s" , message);
//Send some data
if(send(sock , message , strlen(message) , 0) < 0)
{
puts("Send failed");
return 1;
}
//Receive a reply from the server
if(recv(sock , server_reply , 2000 , 0) < 0)
{
puts("recv failed");
break;
}
puts("Server reply :");
puts(server_reply);
}
close(sock);
return 0;
}

View File

View File

@@ -1,73 +0,0 @@
/*
C socket server example
*/
#include<stdio.h>
#include<string.h> //strlen
#include<sys/socket.h>
#include<arpa/inet.h> //inet_addr
#include<unistd.h> //write
int main(int argc , char *argv[])
{
int socket_desc , client_sock , c , read_size;
struct sockaddr_in server , client;
char client_message[2000];
//Create socket
socket_desc = socket(AF_INET , SOCK_STREAM , 0);
if (socket_desc == -1)
{
printf("Could not create socket");
}
puts("Socket created");
//Prepare the sockaddr_in structure
server.sin_family = AF_INET;
server.sin_addr.s_addr = INADDR_ANY;
server.sin_port = htons( 8888 );
//Bind
if( bind(socket_desc,(struct sockaddr *)&server , sizeof(server)) < 0)
{
//print the error message
perror("bind failed. Error");
return 1;
}
puts("bind done");
//Listen
listen(socket_desc , 3);
//Accept and incoming connection
puts("Waiting for incoming connections...");
c = sizeof(struct sockaddr_in);
//accept connection from an incoming client
client_sock = accept(socket_desc, (struct sockaddr *)&client, (socklen_t*)&c);
if (client_sock < 0)
{
perror("accept failed");
return 1;
}
puts("Connection accepted");
//Receive a message from client
while( (read_size = recv(client_sock , client_message , 2000 , 0)) > 0 )
{
//Send the message back to client
write(client_sock , client_message , strlen(client_message));
}
if(read_size == 0)
{
puts("Client disconnected");
fflush(stdout);
}
else if(read_size == -1)
{
perror("recv failed");
}
return 0;
}

View File

@@ -1,64 +0,0 @@
/*
C ECHO client example using sockets
*/
#include <stdio.h> //printf
#include <string.h> //strlen
#include <sys/socket.h> //socket
#include <arpa/inet.h> //inet_addr
#include "../../sdk.h"
int main(int argc , char *argv[])
{
int sock;
struct sockaddr_in server;
char message[1000] , server_reply[2000];
//Create socket
sock = zt_socket(AF_INET , SOCK_STREAM , 0);
if (sock == -1)
{
printf("Could not create socket");
}
puts("Socket created");
server.sin_addr.s_addr = inet_addr("127.0.0.1");
server.sin_family = AF_INET;
server.sin_port = htons( 8888 );
//Connect to remote server
if (zt_connect(sock , (struct sockaddr *)&server , sizeof(server)) < 0)
{
perror("connect failed. Error");
return 1;
}
puts("Connected\n");
//keep communicating with server
while(1)
{
printf("Enter message : ");
scanf("%s" , message);
//Send some data
if(zt_send(sock , message , strlen(message) , 0) < 0)
{
puts("Send failed");
return 1;
}
//Receive a reply from the server
if(zt_recv(sock , server_reply , 2000 , 0) < 0)
{
puts("recv failed");
break;
}
puts("Server reply :");
puts(server_reply);
}
close(sock);
return 0;
}

View File

@@ -1,75 +0,0 @@
/*
C socket server example
*/
#include <stdio.h>
#include <string.h> //strlen
#include <sys/socket.h>
#include <arpa/inet.h> //inet_addr
#include <unistd.h> //write
#include "../../sdk.h"
int main(int argc , char *argv[])
{
int socket_desc , client_sock , c , read_size;
struct sockaddr_in server , client;
char client_message[2000];
//Create socket
socket_desc = zt_socket(AF_INET , SOCK_STREAM , 0);
if (socket_desc == -1)
{
printf("Could not create socket");
}
puts("Socket created");
//Prepare the sockaddr_in structure
server.sin_family = AF_INET;
server.sin_addr.s_addr = INADDR_ANY;
server.sin_port = htons( 8888 );
//Bind
if( zt_bind(socket_desc,(struct sockaddr *)&server , sizeof(server)) < 0)
{
//print the error message
perror("bind failed. Error");
return 1;
}
puts("bind done");
//Listen
zt_listen(socket_desc , 3);
//Accept and incoming connection
puts("Waiting for incoming connections...");
c = sizeof(struct sockaddr_in);
//accept connection from an incoming client
client_sock = zt_accept(socket_desc, (struct sockaddr *)&client, (socklen_t*)&c);
if (client_sock < 0)
{
perror("accept failed");
return 1;
}
puts("Connection accepted");
//Receive a message from client
while( (read_size = zt_recv(client_sock , client_message , 2000 , 0)) > 0 )
{
//Send the message back to client
zt_write(client_sock , client_message , strlen(client_message));
}
if(read_size == 0)
{
puts("Client disconnected");
fflush(stdout);
}
else if(read_size == -1)
{
perror("recv failed");
}
return 0;
}