projects
/
swifty.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Ignore test executables
[swifty.git]
/
test
/
server.c
diff --git
a/test/server.c
b/test/server.c
index
32b9be6
..
ee1ac89
100644
(file)
--- a/
test/server.c
+++ b/
test/server.c
@@
-1,4
+1,4
@@
-#include "../src/kernel/
swift
.h"
+#include "../src/kernel/
mptp
.h"
#include <sys/socket.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <sys/types.h>
@@
-7,28
+7,32
@@
#include <netinet/in.h>
#include <stdlib.h>
#include <netinet/in.h>
#include <stdlib.h>
+#define ADDR 0x8182A8C0
+#define NUM_BUF 10
+
int main(int argc, const char *argv[])
{
int sock;
int main(int argc, const char *argv[])
{
int sock;
+ int i;
if (argc != 2) {
fprintf(stderr, "USAGE: %s listening_port\n", argv[0]);
return -1;
}
if (argc != 2) {
fprintf(stderr, "USAGE: %s listening_port\n", argv[0]);
return -1;
}
- sock = socket(PF_INET, SOCK_DGRAM, IPPROTO_
SWIFT
);
+ sock = socket(PF_INET, SOCK_DGRAM, IPPROTO_
MPTP
);
if (sock < 0) {
perror("Failed to create socket");
return -1;
}
if (sock < 0) {
perror("Failed to create socket");
return -1;
}
- int size = sizeof(struct sockaddr_
swift) + sizeof(struct swift
_dest);
- struct sockaddr_
swift
*saddr = malloc(size);
+ int size = sizeof(struct sockaddr_
mptp) + sizeof(struct mptp
_dest);
+ struct sockaddr_
mptp
*saddr = malloc(size);
memset(saddr, 0, size);
saddr->count = 1;
memset(saddr, 0, size);
saddr->count = 1;
-
saddr->dests[0].addr = 0x0100007F
;
- saddr->dests[0].port =
atoi(argv[1]
);
+
inet_aton(ADDR, &(saddr->dests[0].addr))
;
+ saddr->dests[0].port =
htons(atoi(argv[1])
);
if (bind(sock, (struct sockaddr *) saddr, size) < 0) {
perror("Failed to bind socket");
if (bind(sock, (struct sockaddr *) saddr, size) < 0) {
perror("Failed to bind socket");
@@
-36,25
+40,30
@@
int main(int argc, const char *argv[])
return -1;
}
return -1;
}
- char buf[
256
];
- struct iovec iov[
1
];
+ char buf[
NUM_BUF][10240
];
+ struct iovec iov[
NUM_BUF
];
struct msghdr msg;
struct msghdr msg;
- struct sockaddr_swift *from = malloc(size);
+ size += (NUM_BUF - 1) * sizeof(struct mptp_dest);
+ struct sockaddr_mptp *from = malloc(size);
memset(&msg, 0, sizeof(msg));
memset(&iov, 0, sizeof(iov));
memset(from, 0, size);
memset(&msg, 0, sizeof(msg));
memset(&iov, 0, sizeof(iov));
memset(from, 0, size);
- iov[0].iov_base = buf;
- iov[0].iov_len = sizeof(buf);
+ for (i = 0; i < NUM_BUF; i++) {
+ iov[i].iov_base = buf[i];
+ iov[i].iov_len = sizeof(buf[i]);
+ }
msg.msg_iov = iov;
msg.msg_iov = iov;
- msg.msg_iovlen = 1;
+ msg.msg_iovlen = 1
0
;
msg.msg_name = from;
msg.msg_namelen = size;
int ret, fromlen;
msg.msg_name = from;
msg.msg_namelen = size;
int ret, fromlen;
+ sleep(20);
+
ret = recvmsg(sock, &msg, 0);
if (ret < 0) {
perror("Failed to recv on socket");
ret = recvmsg(sock, &msg, 0);
if (ret < 0) {
perror("Failed to recv on socket");
@@
-62,7
+71,9
@@
int main(int argc, const char *argv[])
}
printf("Received %d bytes on socket\n", ret);
}
printf("Received %d bytes on socket\n", ret);
- printf("buf=%s\n", buf);
+ for (i = 0; i < from->count; i++) {
+ printf("buf=%s from %s:%d\n", buf[i], inet_ntoa(from->dests[i].addr), from->dests[i].port);
+ }
if (close(sock) < 0) {
perror("Failed to close socket");
if (close(sock) < 0) {
perror("Failed to close socket");