int main() { int result; le_EventLoop* loop; printf("<---------client started!--------->\n"); loop = le_eventLoopCreate(); client = (le_TcpConnection*)malloc(sizeof(le_TcpConnection)); le_tcpConnectionInit(loop, client, closeCB); result = le_connect(client, "127.0.0.1", 8611, connectionCB); if( result ) { free(client); errorLog(loop, "le_connect"); } else { printf("le_connect success!\n"); } le_run(loop); le_eventLoopDelete(loop); printf("rbytes: %d, sbytes: %d\n", rbytes, sbytes); printf("<---------client closed!--------->\n"); getchar(); return 0; }
int main(int argc, char *argv[]) { ng_hci_le_set_event_mask_cp lemc; char buf[NG_HCI_ADVERTISING_DATA_SIZE]; char hname[NG_HCI_ADVERTISING_DATA_SIZE-10]; int s; int ch; char *node="ubt0hci"; int len,addr_valid = 0; bdaddr_t bd; int sflag = 0; int res = -1,handle = -1; while((ch = getopt(argc, argv, "s") )!= -1){ switch(ch){ case 's': sflag = 1; break; default: fprintf(stderr, "Usage: %s [-s] bdaddr\n", argv[0]); exit(-1); break; } } argc -= optind; argv += optind; if(argc>0){ addr_valid = bt_aton(argv[0],&bd); } s = open_socket("ubt0hci"); set_event_mask(s,0x20001fffffffffff); set_le_event_mask(s, 0x1f); read_le_buffer_size(s); le_read_local_supported_features(s); le_set_scan_param(s, 0, 0x12, 0x12, 0, 0); buf[0] = 2; buf[1] = 1; buf[2] = 0; buf[3] = 8; gethostname(hname, sizeof(hname)); len = strlen(hname); #if 1 memcpy(&buf[5], hname, len); buf[4] = len - 1; le_set_scan_response(s, sizeof(buf), buf); le_read_supported_status(s); le_set_scan_enable(s,1); le_scan_result(s); le_set_scan_enable(s,0); #endif if(addr_valid){ #if 0 res = 1; res = le_connect(s, &bd); if(res == 0){ handle = le_connect_result(s); }else{ printf("CONNECT FAILED\n"); return -1; } printf("Handle %x\n", handle); #endif le_l2connect(&bd, s, sflag); //le_smpconnect(&bd, s); } return 0; }