Go to the documentation of this file.00001
00002
00003
00004 #include <stdio.h>
00005 #include <stdlib.h>
00006 #include <string.h>
00007 #include <unistd.h>
00008 #include <ibrdtn/api/dtn_api.h>
00009
00011 DTN_EP dep=-1;
00012
00014 int16_t waitfor=0;
00015
00016
00018 void print_usage(char *me) {
00019 printf("Usage: %s dst-eid message\n",me);
00020 exit(-1);
00021 }
00022
00023
00024
00026 int main(int argc, char *argv[])
00027 {
00028
00029 char buf[128];
00030 int count;
00031 int i;
00032
00033 if (argc < 3)
00034 print_usage(argv[0]);
00035
00036
00037 dep=dtn_register_endpoint("test",NULL, NULL);
00038
00039 if (dep < 0) {
00040 puts("Problems registering endpoint. Terminating");
00041 return -2;
00042 }
00043
00044 printf("Sending %s\n", argv[2]);
00045 waitfor=strlen(argv[2]+1);
00046
00047 dtn_endpoint_set_option(dep,DTN_OPTION_DSTEID,argv[1]);
00048
00049
00050
00051 dtn_write(dep, argv[2],strlen(argv[2])+1);
00052 dtn_flush(dep);
00053
00054 while (waitfor > 0) {
00055 count=dtn_read(dep,buf,128);
00056 if (count < 0) {
00057 puts("Error reading from endpoint");
00058 waitfor=0;
00059 continue;
00060 }
00061 printf("Read %i bytes: ", count);
00062 for (i=0; i< count; i++)
00063 putchar( buf[i] );
00064 puts("");
00065 waitfor-=count;
00066 }
00067
00068 return 0;
00069 }