static void setup_powered_server(const void *test_data) { struct test_data *data = tester_get_data(); const struct smp_data *smp = data->test_data; unsigned char param[] = { 0x01 }; mgmt_register(data->mgmt, MGMT_EV_USER_CONFIRM_REQUEST, data->mgmt_index, user_confirm_request_callback, data, NULL); tester_print("Powering on controller"); mgmt_send(data->mgmt, MGMT_OP_SET_LE, data->mgmt_index, sizeof(param), param, NULL, NULL, NULL); mgmt_send(data->mgmt, MGMT_OP_SET_BONDABLE, data->mgmt_index, sizeof(param), param, NULL, NULL, NULL); mgmt_send(data->mgmt, MGMT_OP_SET_CONNECTABLE, data->mgmt_index, sizeof(param), param, NULL, NULL, NULL); mgmt_send(data->mgmt, MGMT_OP_SET_ADVERTISING, data->mgmt_index, sizeof(param), param, NULL, NULL, NULL); if (smp->sc) { mgmt_send(data->mgmt, MGMT_OP_SET_SECURE_CONN, data->mgmt_index, sizeof(param), param, NULL, NULL, NULL); make_pk(data); } mgmt_send(data->mgmt, MGMT_OP_SET_POWERED, data->mgmt_index, sizeof(param), param, setup_powered_server_callback, NULL, NULL); }
static void setup_powered_client(const void *test_data) { struct test_data *data = tester_get_data(); const struct smp_data *smp = data->test_data; unsigned char param[] = { 0x01 }; tester_print("Powering on controller"); mgmt_send(data->mgmt, MGMT_OP_SET_LE, data->mgmt_index, sizeof(param), param, NULL, NULL, NULL); mgmt_send(data->mgmt, MGMT_OP_SET_BONDABLE, data->mgmt_index, sizeof(param), param, NULL, NULL, NULL); if (smp->sc) { mgmt_send(data->mgmt, MGMT_OP_SET_SSP, data->mgmt_index, sizeof(param), param, NULL, NULL, NULL); mgmt_send(data->mgmt, MGMT_OP_SET_SECURE_CONN, data->mgmt_index, sizeof(param), param, NULL, NULL, NULL); make_pk(data); } mgmt_send(data->mgmt, MGMT_OP_SET_POWERED, data->mgmt_index, sizeof(param), param, setup_powered_client_callback, NULL, NULL); }
int make(char *buf,int length,packet* pk) { if(buf[0]=='c'&&buf[1]=='d'&&length>3) { make_pk(pk,1,length-3,buf+3); return 0; } if(buf[0]=='l'&&buf[1]=='s'&&length==2) { make_pk(pk,2,length,buf); return 0; } if(buf[0]=='p'&&buf[1]=='u'&&buf[2]=='t'&&buf[3]=='s'&&length>5) { make_pk(pk,3,length-5,buf+5); return 0; } if(buf[0]=='g'&&buf[1]=='e'&&buf[2]=='t'&&buf[3]=='s'&&length>5) { make_pk(pk,4,length-5,buf+5); return 0; } if(buf[0]=='r'&&buf[1]=='e'&&buf[2]=='m'&&buf[3]=='o'&&buf[4]=='v'&&buf[5]=='e'&&length>7) { make_pk(pk,5,length-7,buf+7); return 0; } if(buf[0]=='p'&&buf[1]=='w'&&buf[2]=='d'&&length==3) { make_pk(pk,6,length,buf); return 0; } if(buf[0]=='d'&&buf[1]=='o'&&buf[2]=='w'&&buf[3]=='n'&&length==4) { make_pk(pk,8,length,buf); return 0; } printf("error\n"); make_pk(pk,-1,length+1,buf); return 0; }