aboutsummaryrefslogtreecommitdiff
path: root/src/transport/gnunet-helper-transport-bluetooth.c
diff options
context:
space:
mode:
authorClaudiu Olteanu <claudiu@140774ce-b5e7-0310-ab8b-a85725594a96>2013-09-19 13:26:07 +0000
committerClaudiu Olteanu <claudiu@140774ce-b5e7-0310-ab8b-a85725594a96>2013-09-19 13:26:07 +0000
commit1cf0e4ec14207ce1c78bbe035060ce4b41aae347 (patch)
treec8c5908b55caf232a802757fdae8013d8ab97cb9 /src/transport/gnunet-helper-transport-bluetooth.c
parent8d4d3437ec65fb17657ac60eede0a1bae3936d2f (diff)
downloadgnunet-1cf0e4ec14207ce1c78bbe035060ce4b41aae347.tar.gz
gnunet-1cf0e4ec14207ce1c78bbe035060ce4b41aae347.zip
cleaning up the code
Diffstat (limited to 'src/transport/gnunet-helper-transport-bluetooth.c')
-rw-r--r--src/transport/gnunet-helper-transport-bluetooth.c44
1 files changed, 13 insertions, 31 deletions
diff --git a/src/transport/gnunet-helper-transport-bluetooth.c b/src/transport/gnunet-helper-transport-bluetooth.c
index 457b77cfe..14551d3b5 100644
--- a/src/transport/gnunet-helper-transport-bluetooth.c
+++ b/src/transport/gnunet-helper-transport-bluetooth.c
@@ -698,7 +698,7 @@ check_crc_buf_osdep (const unsigned char *buf, size_t len)
698 static int 698 static int
699 register_service (struct HardwareInfos *dev) 699 register_service (struct HardwareInfos *dev)
700 { 700 {
701 // advertise the service 701 /* advertise the service */
702 CSADDR_INFO addr_info; 702 CSADDR_INFO addr_info;
703 WSAQUERYSET wqs; 703 WSAQUERYSET wqs;
704 GUID guid; 704 GUID guid;
@@ -744,7 +744,7 @@ check_crc_buf_osdep (const unsigned char *buf, size_t len)
744 wqs.lpServiceClassId = &guid; 744 wqs.lpServiceClassId = &guid;
745 wqs.dwNumberOfCsAddrs = 1; 745 wqs.dwNumberOfCsAddrs = 1;
746 wqs.lpcsaBuffer = &addr_info ; 746 wqs.lpcsaBuffer = &addr_info ;
747 wqs.lpBlob = 0; //FIXME it should be 0 for a new entry 747 wqs.lpBlob = 0;
748 748
749 if (SOCKET_ERROR == WSASetService (&wqs , RNRSERVICE_REGISTER, 0)) 749 if (SOCKET_ERROR == WSASetService (&wqs , RNRSERVICE_REGISTER, 0))
750 { 750 {
@@ -906,7 +906,6 @@ check_crc_buf_osdep (const unsigned char *buf, size_t len)
906 { 906 {
907 case WSAEFAULT: 907 case WSAEFAULT:
908 free (wqs); 908 free (wqs);
909 //fprintf (stderr, "WSAFAULT error! (the memory allocated wasn't enought\n");
910 wqs = (WSAQUERYSET*)malloc (wqs_len); 909 wqs = (WSAQUERYSET*)malloc (wqs_len);
911 break; 910 break;
912 case WSANO_DATA: 911 case WSANO_DATA:
@@ -915,7 +914,6 @@ check_crc_buf_osdep (const unsigned char *buf, size_t len)
915 break; 914 break;
916 case WSA_E_NO_MORE: 915 case WSA_E_NO_MORE:
917 done = 1; 916 done = 1;
918 // fprintf (stderr, "No matching service found\n");
919 break; 917 break;
920 default: 918 default:
921 fprintf (stderr, "Failed to look over the services: "); 919 fprintf (stderr, "Failed to look over the services: ");
@@ -970,7 +968,6 @@ check_crc_buf_osdep (const unsigned char *buf, size_t len)
970 { 968 {
971 fprintf (stderr, "Failed to connect to the SDP server on interface `%.*s': %s\n", 969 fprintf (stderr, "Failed to connect to the SDP server on interface `%.*s': %s\n",
972 IFNAMSIZ, dev->iface, strerror (errno)); 970 IFNAMSIZ, dev->iface, strerror (errno));
973 //FIXME exit?
974 return -1; 971 return -1;
975 } 972 }
976 973
@@ -984,7 +981,6 @@ check_crc_buf_osdep (const unsigned char *buf, size_t len)
984 for (it = response_list; it; it = it->next) 981 for (it = response_list; it; it = it->next)
985 { 982 {
986 sdp_record_t *record = (sdp_record_t*) it->data; 983 sdp_record_t *record = (sdp_record_t*) it->data;
987 //TODO print some record informations to be sure everything is good
988 sdp_list_t *proto_list = 0; 984 sdp_list_t *proto_list = 0;
989 if (sdp_get_access_protos (record, &proto_list) == 0) 985 if (sdp_get_access_protos (record, &proto_list) == 0)
990 { 986 {
@@ -1047,7 +1043,7 @@ read_from_the_socket (void *sock,
1047 } 1043 }
1048 1044
1049 #ifdef LINUX 1045 #ifdef LINUX
1050 /* Get the channel used */ //FIXME probably not needed anymore 1046 /* Get the channel used */
1051 int len; 1047 int len;
1052 struct sockaddr_rc rc_addr = { 0 }; 1048 struct sockaddr_rc rc_addr = { 0 };
1053 1049
@@ -1086,12 +1082,11 @@ open_device (struct HardwareInfos *dev)
1086 #ifdef MINGW 1082 #ifdef MINGW
1087 SOCKADDR_BTH addr; 1083 SOCKADDR_BTH addr;
1088 1084
1089 /* bind the hci socket to the interface */ 1085 /* bind the RFCOMM socket to the interface */
1090 addr.addressFamily = AF_BTH; 1086 addr.addressFamily = AF_BTH;
1091 addr.btAddr = 0; 1087 addr.btAddr = 0;
1092 addr.port = BT_PORT_ANY; 1088 addr.port = BT_PORT_ANY;
1093 1089
1094 //FIXME flags parameter
1095 if (GNUNET_NETWORK_socket_bind (dev->handle, (const SOCKADDR*)&addr, sizeof (SOCKADDR_BTH), 0) != GNUNET_OK) 1090 if (GNUNET_NETWORK_socket_bind (dev->handle, (const SOCKADDR*)&addr, sizeof (SOCKADDR_BTH), 0) != GNUNET_OK)
1096 { 1091 {
1097 fprintf (stderr, "Failed to bind the socket: "); 1092 fprintf (stderr, "Failed to bind the socket: ");
@@ -1661,7 +1656,7 @@ main (int argc, char *argv[])
1661 1656
1662 if (-1 == dev.fd_rfcomm) 1657 if (-1 == dev.fd_rfcomm)
1663 { 1658 {
1664 fprintf (stderr, "Failed to create a HCI socket: %s\n", strerror (raw_eno)); 1659 fprintf (stderr, "Failed to create a RFCOMM socket: %s\n", strerror (raw_eno));
1665 return 1; 1660 return 1;
1666 } 1661 }
1667 if (dev.fd_rfcomm >= FD_SETSIZE) 1662 if (dev.fd_rfcomm >= FD_SETSIZE)
@@ -1720,11 +1715,8 @@ main (int argc, char *argv[])
1720 stdin_mst = mst_create (&stdin_send_hw, &dev); 1715 stdin_mst = mst_create (&stdin_send_hw, &dev);
1721 stdin_open = 1; 1716 stdin_open = 1;
1722 1717
1723 fprintf (stderr, "\n-----------------------------------------------\n Check if the program exits\n-----------------------------------------------\n");
1724 /** 1718 /**
1725 * TODO : When a connection fails I should ignore only the CONTROL messages. 1719 * TODO : I should make the time out of a mac endpoint smaller and check if the rate
1726 * For DATA messages I should retry to send the message until it doesn't fail
1727 * Also I should make the time out of a mac endpoint smaller and check if the rate
1728 * from get_wlan_header (plugin_transport_bluetooth.c) is correct. 1720 * from get_wlan_header (plugin_transport_bluetooth.c) is correct.
1729 */ 1721 */
1730 while (1) 1722 while (1)
@@ -1772,14 +1764,12 @@ main (int argc, char *argv[])
1772 sizeof (struct GNUNET_TRANSPORT_WLAN_MacAddress)) == 0) 1764 sizeof (struct GNUNET_TRANSPORT_WLAN_MacAddress)) == 0)
1773 { 1765 {
1774 fprintf (stderr, "LOG : %s has a broadcast message (pos %d, size %d)\n", dev.iface, neighbours.pos, neighbours.size); //FIXME: debugging message 1766 fprintf (stderr, "LOG : %s has a broadcast message (pos %d, size %d)\n", dev.iface, neighbours.pos, neighbours.size); //FIXME: debugging message
1775 // broadcast = 1; // IF I HAVE A BROADCAST MESSAGE I skip.
1776 // memset (&write_pout, 0, sizeof (write_pout));
1777 1767
1778 if (send_broadcast(&dev, &sendsocket) != 0) //if the searching wasn't successful don't get stuck on the select stage 1768 if (send_broadcast(&dev, &sendsocket) != 0) //if the searching wasn't successful don't get stuck on the select stage
1779 { 1769 {
1780 broadcast = 1; 1770 broadcast = 1;
1781 memset (&write_pout, 0, sizeof (write_pout)); //remove the message 1771 memset (&write_pout, 0, sizeof (write_pout)); //remove the message
1782 fprintf (stderr, "LOG : Skip the broadcast message (pos %d, size %d)\n", neighbours.pos, neighbours.size); 1772 fprintf (stderr, "LOG : Skipping the broadcast message (pos %d, size %d)\n", neighbours.pos, neighbours.size);
1783 } 1773 }
1784 else 1774 else
1785 { 1775 {
@@ -2170,8 +2160,7 @@ main (int argc, char *argv[])
2170 pos = 0; 2160 pos = 0;
2171 stdin_pos = -1; 2161 stdin_pos = -1;
2172 stdout_pos = -1; 2162 stdout_pos = -1;
2173 sendsocket = NULL; //FIXME memleaks 2163 sendsocket = NULL; //FIXME ???memleaks
2174 fprintf (stderr, "---------------------------------------------------\n");
2175 2164
2176 GNUNET_NETWORK_fdset_zero (rfds); 2165 GNUNET_NETWORK_fdset_zero (rfds);
2177 if ((0 == write_pout.size) && (1 == stdin_open)) 2166 if ((0 == write_pout.size) && (1 == stdin_open))
@@ -2179,7 +2168,7 @@ main (int argc, char *argv[])
2179 stdin_pos = pos; 2168 stdin_pos = pos;
2180 pos +=1; 2169 pos +=1;
2181 fprintf (stderr, "LOG: set STDIN_FILENO\n"); 2170 fprintf (stderr, "LOG: set STDIN_FILENO\n");
2182 GNUNET_NETWORK_fdset_handle_set (rfds, (struct GNUNET_DISK_FileHandle*) &stdin_handle); //FIXME create a GNUNET_STRUCT handle for stdin 2171 GNUNET_NETWORK_fdset_handle_set (rfds, (struct GNUNET_DISK_FileHandle*) &stdin_handle);
2183 } 2172 }
2184 2173
2185 if (0 == write_std.size) 2174 if (0 == write_std.size)
@@ -2202,7 +2191,6 @@ main (int argc, char *argv[])
2202 stdout_pos = pos; 2191 stdout_pos = pos;
2203 fprintf (stderr, "LOG: set STDOUT_FILENO\n"); 2192 fprintf (stderr, "LOG: set STDOUT_FILENO\n");
2204 GNUNET_NETWORK_fdset_handle_set (wfds, (struct GNUNET_DISK_FileHandle*) &stdout_handle); 2193 GNUNET_NETWORK_fdset_handle_set (wfds, (struct GNUNET_DISK_FileHandle*) &stdout_handle);
2205 fprintf (stderr, "LOG: after setting STDOUT_FILENO\n");
2206 // printf ("%s\n", write_std.buf); 2194 // printf ("%s\n", write_std.buf);
2207 // memset (write_std.buf, 0, write_std.size); 2195 // memset (write_std.buf, 0, write_std.size);
2208 // write_std.size = 0; 2196 // write_std.size = 0;
@@ -2211,7 +2199,7 @@ main (int argc, char *argv[])
2211 if (0 < write_pout.size) 2199 if (0 < write_pout.size)
2212 { 2200 {
2213 if (strcmp (argv[1], "ff:ff:ff:ff:ff:ff") == 0) { 2201 if (strcmp (argv[1], "ff:ff:ff:ff:ff:ff") == 0) {
2214 fprintf(stderr, "BROADCAST\n"); 2202 fprintf(stderr, "BROADCAST! Skipping the message\n");
2215 // skip the message 2203 // skip the message
2216 broadcast = 1; 2204 broadcast = 1;
2217 memset (write_pout.buf, 0, write_pout.size); 2205 memset (write_pout.buf, 0, write_pout.size);
@@ -2239,7 +2227,7 @@ main (int argc, char *argv[])
2239 print_last_error(); 2227 print_last_error();
2240 ExitProcess ( 2 ) ; 2228 ExitProcess ( 2 ) ;
2241 } 2229 }
2242 addr.port = get_channel (argv[1]); //crapa aici 2230 addr.port = get_channel (argv[1]);
2243 if (addr.port == -1) 2231 if (addr.port == -1)
2244 { 2232 {
2245 fprintf (stderr, "Couldn't find the sdp service for the address: %s\n", argv[1]); 2233 fprintf (stderr, "Couldn't find the sdp service for the address: %s\n", argv[1]);
@@ -2249,8 +2237,6 @@ main (int argc, char *argv[])
2249 } 2237 }
2250 else 2238 else
2251 { 2239 {
2252 fprintf (stderr, "got the channel %d\n", addr.port);
2253
2254 if (GNUNET_OK != GNUNET_NETWORK_socket_connect (sendsocket, (LPSOCKADDR)&addr, addr_len)) 2240 if (GNUNET_OK != GNUNET_NETWORK_socket_connect (sendsocket, (LPSOCKADDR)&addr, addr_len))
2255 { 2241 {
2256 fprintf (stderr, "Failed to connect: "); 2242 fprintf (stderr, "Failed to connect: ");
@@ -2294,8 +2280,7 @@ main (int argc, char *argv[])
2294 print_last_error(); 2280 print_last_error();
2295 break; 2281 break;
2296 } 2282 }
2297 fprintf (stderr, "--->sended: %d\n", ret); 2283
2298 Sleep(5000);
2299 if (ret <= 0) 2284 if (ret <= 0)
2300 { 2285 {
2301 fprintf (stderr, "Failed to write to STDOUT\n"); 2286 fprintf (stderr, "Failed to write to STDOUT\n");
@@ -2313,7 +2298,6 @@ main (int argc, char *argv[])
2313 { 2298 {
2314 if (GNUNET_NETWORK_fdset_isset (wfds, sendsocket)) 2299 if (GNUNET_NETWORK_fdset_isset (wfds, sendsocket))
2315 { 2300 {
2316 fprintf (stderr, "-------------SEND------------\n");
2317 ssize_t ret; 2301 ssize_t ret;
2318 ret = GNUNET_NETWORK_socket_send (sendsocket, write_pout.buf + write_pout.pos, 2302 ret = GNUNET_NETWORK_socket_send (sendsocket, write_pout.buf + write_pout.pos,
2319 write_pout.size - write_pout.pos); 2303 write_pout.size - write_pout.pos);
@@ -2328,7 +2312,6 @@ main (int argc, char *argv[])
2328 print_last_error(); 2312 print_last_error();
2329 } 2313 }
2330 ExitProcess (2); 2314 ExitProcess (2);
2331 //break;
2332 } 2315 }
2333 else 2316 else
2334 { 2317 {
@@ -2354,7 +2337,7 @@ main (int argc, char *argv[])
2354 } 2337 }
2355 2338
2356 //if (GNUNET_NETWORK_fdset_isset (rfds, (struct GNUNET_NETWORK_Handle*)&stdin_handle)) 2339 //if (GNUNET_NETWORK_fdset_isset (rfds, (struct GNUNET_NETWORK_Handle*)&stdin_handle))
2357 if (retval == stdin_pos) //FALSEEE!!!! NUUUUU EEE VOOIEE!!_----------------------------------------------------------? 2340 if (retval == stdin_pos)
2358 { 2341 {
2359 fprintf (stderr, "-------------STDIN------------\n"); 2342 fprintf (stderr, "-------------STDIN------------\n");
2360 //ssize_t ret; 2343 //ssize_t ret;
@@ -2379,7 +2362,6 @@ main (int argc, char *argv[])
2379 else 2362 else
2380 if (GNUNET_NETWORK_fdset_isset (rfds, dev.handle)) 2363 if (GNUNET_NETWORK_fdset_isset (rfds, dev.handle))
2381 { 2364 {
2382 fprintf (stderr, "-------------ACCEPT------------\n");
2383 fprintf (stderr, "LOG: accepting connection\n"); 2365 fprintf (stderr, "LOG: accepting connection\n");
2384 struct GNUNET_NETWORK_Handle *readsocket; 2366 struct GNUNET_NETWORK_Handle *readsocket;
2385 readsocket = GNUNET_NETWORK_socket_accept (dev.handle, (LPSOCKADDR)&acc_addr, &addr_len); 2367 readsocket = GNUNET_NETWORK_socket_accept (dev.handle, (LPSOCKADDR)&acc_addr, &addr_len);