rdpRdp* rdp_new(freerdp* instance) { rdpRdp* rdp; rdp = (rdpRdp*) xzalloc(sizeof(rdpRdp)); if (rdp != NULL) { rdp->instance = instance; rdp->settings = settings_new((void*) instance); if (instance != NULL) instance->settings = rdp->settings; rdp->transport = transport_new(rdp->settings); rdp->license = license_new(rdp); // rdp->input = input_new(rdp); // rdp->update = update_new(rdp); rdp->fastpath = fastpath_new(rdp); rdp->nego = nego_new(rdp->transport); rdp->mcs = mcs_new(rdp->transport); rdp->redirection = redirection_new(); rdp->mppc = mppc_new(rdp); } return rdp; }
void test_gcc_write_client_cluster_data(void) { STREAM* s; rdpSettings* settings; s = stream_new(12); settings = settings_new(); gcc_write_client_cluster_data(s, settings); ASSERT_STREAM(s, (uint8*) gcc_client_cluster_data_expected, sizeof(gcc_client_cluster_data_expected)); }
void test_gcc_write_client_security_data(void) { STREAM* s; rdpSettings* settings; s = stream_new(12); settings = settings_new(); settings->encryption_method = ENCRYPTION_METHOD_40BIT | ENCRYPTION_METHOD_56BIT | ENCRYPTION_METHOD_128BIT | ENCRYPTION_METHOD_FIPS; gcc_write_client_security_data(s, settings); ASSERT_STREAM(s, (uint8*) gcc_client_security_data_expected, sizeof(gcc_client_security_data_expected)); }
rdpRdp* rdp_new() { rdpRdp* rdp; rdp = (rdpRdp*) xzalloc(sizeof(rdpRdp)); if (rdp != NULL) { rdp->connected = False; rdp->settings = settings_new(); rdp->registry = registry_new(rdp->settings); rdp->transport = transport_new(rdp->settings); rdp->license = license_new(rdp); rdp->nego = nego_new(rdp->transport); rdp->mcs = mcs_new(rdp->transport); } return rdp; }
void test_gcc_write_client_core_data(void) { STREAM* s; rdpSettings* settings; s = stream_new(512); settings = settings_new(); settings->width = 1280; settings->height = 1024; settings->rdp_version = 5; settings->color_depth = 24; settings->kbd_layout = 0x409; settings->client_build = 3790; strcpy(settings->client_hostname, "ELTONS-DEV2"); strcpy(settings->client_product_id, "69712-783-0357974-42714"); gcc_write_client_core_data(s, settings); ASSERT_STREAM(s, (uint8*) gcc_client_core_data_expected, sizeof(gcc_client_core_data_expected)); }
Settings *settings_new_from_gui() { Settings *s = settings_new(); s->csv_dir = settings_get_csv_dir(); s->output_dir = settings_get_output_dir(); s->obs_req_num = atoi(get_string_from_entry("next_obs_request_number_entry")); s->obs_req_id_aadn = atoi(get_string_from_entry("next_obs_request_id_entry")); s->obs_req_id_tdrs = atoi(get_string_from_entry("next_obs_request_id_tdrs_entry")); s->acq_req_num = atoi(get_string_from_entry("next_acq_request_number_entry")); s->odl0_seq_num = atoi(get_string_from_entry("odl0_sequence_number_entry")); s->odl0_req_id = atoi(get_string_from_entry("next_odl0_request_id_entry")); s->station_code = STRDUP(settings_get_station_code()); int i; for (i=0; i<MAX_STATIONS; ++i) { char widget_name[128]; snprintf(widget_name, 128, "next_acq_request_id_entry%d", i+1); s->acq_req_ids[i] = atoi(get_string_from_entry(widget_name)); } return s; }
void test_args(void) { char* argv_c[] = { "freerdp", "-a", "8", "-u", "testuser", "-d", "testdomain", "-g", "640x480", "address1:3389", "freerdp", "-a", "16", "-u", "testuser", "-d", "testdomain", "-g", "1280x960", "address2:3390" }; char** argv = argv_c; int argc = ARRAY_SIZE(argv_c); int i; int c; rdpSettings* settings; i = 0; while (argc > 0) { settings = settings_new(NULL); i++; c = freerdp_parse_args(settings, argc, argv, process_plugin_args, NULL, process_ui_args, NULL); CU_ASSERT(c > 0); if (c == 0) { settings_free(settings); break; } CU_ASSERT(settings->color_depth == i * 8); CU_ASSERT(settings->width == i * 640); CU_ASSERT(settings->height == i * 480); CU_ASSERT(settings->port == i + 3388); settings_free(settings); argc -= c; argv += c; } CU_ASSERT(i == 2); }
void test_gcc_write_client_network_data(void) { STREAM* s; rdpSettings* settings; s = stream_new(44); settings = settings_new(); settings->num_channels = 3; memset(settings->channels, 0, sizeof(struct rdp_chan) * settings->num_channels); strcpy(settings->channels[0].name, "rdpdr"); settings->channels[0].options = 0x80800000; strcpy(settings->channels[1].name, "cliprdr"); settings->channels[1].options = 0xc0A00000; strcpy(settings->channels[2].name, "rdpsnd"); settings->channels[2].options = 0xc0000000; gcc_write_client_network_data(s, settings); ASSERT_STREAM(s, (uint8*) gcc_client_network_data_expected, sizeof(gcc_client_network_data_expected)); }
static void saved_rack_parse_plugin (jack_rack_t * jack_rack, saved_rack_t * saved_rack, saved_plugin_t * saved_plugin, const char * filename, xmlNodePtr plugin) { plugin_desc_t * desc; settings_t * settings = NULL; xmlNodePtr node; xmlNodePtr sub_node; xmlChar *content; unsigned long num; unsigned long control = 0; #ifdef WIN32 xmlFreeFunc xmlFree = NULL; xmlMemGet( &xmlFree, NULL, NULL, NULL); #endif for (node = plugin->children; node; node = node->next) { if (xmlStrcmp (node->name, _x("id")) == 0) { content = xmlNodeGetContent (node); num = strtoul (_s(content), NULL, 10); xmlFree (content); desc = plugin_mgr_get_any_desc (jack_rack->plugin_mgr, num); if (!desc) { mlt_log_verbose( NULL, _("The file '%s' contains an unknown plugin with ID '%ld'; skipping\n"), filename, num); return; } settings = settings_new (desc, saved_rack->channels, saved_rack->sample_rate); } else if (xmlStrcmp (node->name, _x("enabled")) == 0) { content = xmlNodeGetContent (node); settings_set_enabled (settings, xmlStrcmp (content, _x("true")) == 0 ? TRUE : FALSE); xmlFree (content); } else if (xmlStrcmp (node->name, _x("wet_dry_enabled")) == 0) { content = xmlNodeGetContent (node); settings_set_wet_dry_enabled (settings, xmlStrcmp (content, _x("true")) == 0 ? TRUE : FALSE); xmlFree (content); } else if (xmlStrcmp (node->name, _x("wet_dry_locked")) == 0) { content = xmlNodeGetContent (node); settings_set_wet_dry_locked (settings, xmlStrcmp (content, _x("true")) == 0 ? TRUE : FALSE); xmlFree (content); } else if (xmlStrcmp (node->name, _x("wet_dry_values")) == 0) { unsigned long channel = 0; for (sub_node = node->children; sub_node; sub_node = sub_node->next) { if (xmlStrcmp (sub_node->name, _x("value")) == 0) { content = xmlNodeGetContent (sub_node); settings_set_wet_dry_value (settings, channel, strtod (_s(content), NULL)); xmlFree (content); channel++; } } } else if (xmlStrcmp (node->name, _x("lockall")) == 0) { content = xmlNodeGetContent (node); settings_set_lock_all (settings, xmlStrcmp (content, _x("true")) == 0 ? TRUE : FALSE); xmlFree (content); } else if (xmlStrcmp (node->name, _x("controlrow")) == 0) { gint copy = 0; for (sub_node = node->children; sub_node; sub_node = sub_node->next) { if (xmlStrcmp (sub_node->name, _x("lock")) == 0) { content = xmlNodeGetContent (sub_node); settings_set_lock (settings, control, xmlStrcmp (content, _x("true")) == 0 ? TRUE : FALSE); xmlFree (content); } else if (xmlStrcmp (sub_node->name, _x("value")) == 0) { content = xmlNodeGetContent (sub_node); settings_set_control_value (settings, copy, control, strtod (_s(content), NULL)); xmlFree (content); copy++; } } control++; } } if (settings) saved_plugin->settings = settings; }
Settings *settings_load() { int i; Settings *s = settings_new(); char *sav_file = find_in_share("req_settings.txt"); if (fileExists(sav_file)) { FILE *fp = FOPEN(sav_file, "r"); if (fp) { char buf[1024]; while (fgets(buf, 1024, fp) != NULL) { read_string_param(buf, csv_dir_key, &s->csv_dir); read_string_param(buf, output_dir_key, &s->output_dir); read_int_param(buf, obs_req_num_key, &s->obs_req_num); read_int_param(buf, obs_req_id_aadn_key, &s->obs_req_id_aadn); read_int_param(buf, obs_req_id_tdrs_key, &s->obs_req_id_tdrs); read_int_param(buf, acq_req_num_key, &s->acq_req_num); read_int_param(buf, odl0_seq_num_key, &s->odl0_seq_num); read_int_param(buf, odl0_req_id_key, &s->odl0_req_id); read_string_param(buf, station_code_key, &s->station_code); for (i=0; i<MAX_STATIONS; ++i) { char id_key[128], stn_code_key[128]; snprintf(id_key, 128, "%s %d", acq_req_id_key, i+1); read_int_param(buf, id_key, &s->acq_req_ids[i]); snprintf(stn_code_key, 128, "%s %d", acq_req_stn_code_key, i+1); char *tmp=NULL; read_string_param(buf, stn_code_key, &tmp); if (tmp) { if (strlen(tmp) > 4) tmp[4] = '\0'; strcpy(s->acq_req_stn_codes[i], tmp); free(tmp); } } } FCLOSE(fp); } else { printf("Failed to open settings file: %s\n", sav_file); } } else { printf("No settings file found.\n"); } FREE(sav_file); if (s->obs_req_num < 1) s->obs_req_num = 1; if (s->obs_req_id_aadn < 1) s->obs_req_id_aadn = 1; if (s->obs_req_id_tdrs < 1) s->obs_req_id_tdrs = 1; if (s->acq_req_num < 1) s->acq_req_num = 1; for (i=0; i<MAX_STATIONS; ++i) if (s->acq_req_ids[i] < 1) s->acq_req_ids[i] = 1; if (s->odl0_seq_num < 1) s->odl0_seq_num = 1; if (s->odl0_req_id < 1) s->odl0_req_id = 1; if (!s->station_code) s->station_code = STRDUP("AADN"); #ifdef DEBUG_SETTINGS settings_print(s); #endif return s; }