~ubuntu-branches/ubuntu/vivid/freerdp/vivid

« back to all changes in this revision

Viewing changes to cunit/test_gcc.c

  • Committer: Package Import Robot
  • Author(s): Iain Lane
  • Date: 2014-11-11 12:20:50 UTC
  • mfrom: (1.1.9) (9.1.17 sid)
  • Revision ID: package-import@ubuntu.com-20141111122050-wyr8hrnwco9fcmum
Tags: 1.1.0~git20140921.1.440916e+dfsg1-2ubuntu1
* Merge with Debian unstable, remaining changes
  - Disable ffmpeg support
* Disable gstreamer support, this relies on gstreamer 0.10 and we don't want
  to add any more deps on that.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
/**
2
 
 * FreeRDP: A Remote Desktop Protocol Client
 
2
 * FreeRDP: A Remote Desktop Protocol Implementation
3
3
 * T.124 Generic Conference Control (GCC) Unit Tests
4
4
 *
5
5
 * Copyright 2011 Marc-Andre Moreau <marcandre.moreau@gmail.com>
20
20
#include "gcc.h"
21
21
 
22
22
#include <freerdp/freerdp.h>
23
 
#include <freerdp/utils/hexdump.h>
24
 
#include <freerdp/utils/stream.h>
 
23
#include <winpr/print.h>
 
24
#include <winpr/stream.h>
25
25
 
26
26
#include "test_gcc.h"
27
27
 
48
48
        return 0;
49
49
}
50
50
 
51
 
uint8 gcc_user_data[284] =
 
51
BYTE gcc_user_data[284] =
52
52
        "\x01\xc0\xd8\x00\x04\x00\x08\x00\x00\x05\x00\x04\x01\xCA\x03\xAA"
53
53
        "\x09\x04\x00\x00\xCE\x0E\x00\x00\x45\x00\x4c\x00\x54\x00\x4f\x00"
54
54
        "\x4e\x00\x53\x00\x2d\x00\x44\x00\x45\x00\x56\x00\x32\x00\x00\x00"
68
68
        "\x00\x00\x80\x80\x63\x6c\x69\x70\x72\x64\x72\x00\x00\x00\xA0\xC0"
69
69
        "\x72\x64\x70\x73\x6e\x64\x00\x00\x00\x00\x00\xc0";
70
70
 
71
 
uint8 gcc_conference_create_request_expected[307] =
 
71
BYTE gcc_conference_create_request_expected[307] =
72
72
        "\x00\x05\x00\x14\x7C\x00\x01\x81\x2A\x00\x08\x00\x10\x00\x01\xC0"
73
73
        "\x00\x44\x75\x63\x61\x81\x1c\x01\xc0\xd8\x00\x04\x00\x08\x00\x00"
74
74
        "\x05\x00\x04\x01\xCA\x03\xAA\x09\x04\x00\x00\xCE\x0E\x00\x00\x45"
92
92
 
93
93
void test_gcc_write_conference_create_request(void)
94
94
{
95
 
        STREAM* s;
96
 
        STREAM user_data;
 
95
        wStream* s;
 
96
        wStream user_data;
97
97
 
98
 
        user_data.data = gcc_user_data;
99
 
        user_data.size = sizeof(gcc_user_data);
100
 
        user_data.p = user_data.data + user_data.size;
 
98
        user_data.buffer = gcc_user_data;
 
99
        user_data.capacity = sizeof(gcc_user_data);
 
100
        user_data.pointer = user_data.buffer + user_data.capacity;
101
101
 
102
102
        s = stream_new(sizeof(gcc_conference_create_request_expected));
103
103
 
104
104
        gcc_write_conference_create_request(s, &user_data);
105
 
        ASSERT_STREAM(s, (uint8*) gcc_conference_create_request_expected, sizeof(gcc_conference_create_request_expected));
 
105
        ASSERT_STREAM(s, (BYTE*) gcc_conference_create_request_expected, sizeof(gcc_conference_create_request_expected));
106
106
}
107
107
 
108
 
uint8 gcc_client_core_data_expected[216] =
 
108
BYTE gcc_client_core_data_expected[216] =
109
109
        "\x01\xc0\xd8\x00\x04\x00\x08\x00\x00\x05\x00\x04\x01\xCA\x03\xAA"
110
110
        "\x09\x04\x00\x00\xCE\x0E\x00\x00\x45\x00\x4c\x00\x54\x00\x4f\x00"
111
111
        "\x4e\x00\x53\x00\x2d\x00\x44\x00\x45\x00\x56\x00\x32\x00\x00\x00"
123
123
 
124
124
void test_gcc_write_client_core_data(void)
125
125
{
126
 
        STREAM* s;
 
126
        wStream* s;
127
127
        rdpSettings* settings;
128
128
 
129
129
        s = stream_new(512);
130
 
        settings = settings_new(NULL);
 
130
        settings = freerdp_settings_new(NULL);
131
131
 
132
132
        settings->width = 1280;
133
133
        settings->height = 1024;
137
137
        settings->kbd_type = 0x04;
138
138
        settings->kbd_fn_keys = 12;
139
139
        settings->client_build = 3790;
140
 
        strcpy(settings->client_hostname, "ELTONS-DEV2");
141
 
        strcpy(settings->client_product_id, "69712-783-0357974-42714");
 
140
        strcpy(settings->ClientHostname, "ELTONS-DEV2");
 
141
        strcpy(settings->ClientProductId, "69712-783-0357974-42714");
142
142
 
143
143
        gcc_write_client_core_data(s, settings);
144
144
 
145
 
        ASSERT_STREAM(s, (uint8*) gcc_client_core_data_expected, sizeof(gcc_client_core_data_expected));
 
145
        ASSERT_STREAM(s, (BYTE*) gcc_client_core_data_expected, sizeof(gcc_client_core_data_expected));
146
146
}
147
147
 
148
 
uint8 gcc_client_security_data_expected[12] =
 
148
BYTE gcc_client_security_data_expected[12] =
149
149
                "\x02\xC0\x0C\x00\x1B\x00\x00\x00\x00\x00\x00\x00";
150
150
 
151
151
void test_gcc_write_client_security_data(void)
152
152
{
153
 
        STREAM* s;
 
153
        wStream* s;
154
154
        rdpSettings* settings;
155
155
 
156
156
        s = stream_new(12);
157
 
        settings = settings_new(NULL);
 
157
        settings = freerdp_settings_new(NULL);
158
158
 
159
 
        settings->encryption = 1; /* turn on encryption */
160
 
        settings->encryption_method =
 
159
        settings->DisableEncryption = 1; /* turn on encryption */
 
160
        settings->EncryptionMethods =
161
161
                        ENCRYPTION_METHOD_40BIT |
162
162
                        ENCRYPTION_METHOD_56BIT |
163
163
                        ENCRYPTION_METHOD_128BIT |
165
165
 
166
166
        gcc_write_client_security_data(s, settings);
167
167
 
168
 
        ASSERT_STREAM(s, (uint8*) gcc_client_security_data_expected, sizeof(gcc_client_security_data_expected));
 
168
        ASSERT_STREAM(s, (BYTE*) gcc_client_security_data_expected, sizeof(gcc_client_security_data_expected));
169
169
}
170
170
 
171
 
uint8 gcc_client_cluster_data_expected[12] =
 
171
BYTE gcc_client_cluster_data_expected[12] =
172
172
                "\x04\xC0\x0C\x00\x0D\x00\x00\x00\x00\x00\x00\x00";
173
173
 
174
174
void test_gcc_write_client_cluster_data(void)
175
175
{
176
 
        STREAM* s;
 
176
        wStream* s;
177
177
        rdpSettings* settings;
178
178
 
179
179
        s = stream_new(12);
180
 
        settings = settings_new(NULL);
 
180
        settings = freerdp_settings_new(NULL);
181
181
 
182
182
        gcc_write_client_cluster_data(s, settings);
183
183
 
184
 
        ASSERT_STREAM(s, (uint8*) gcc_client_cluster_data_expected, sizeof(gcc_client_cluster_data_expected));
 
184
        ASSERT_STREAM(s, (BYTE*) gcc_client_cluster_data_expected, sizeof(gcc_client_cluster_data_expected));
185
185
}
186
186
 
187
 
uint8 gcc_client_network_data_expected[44] =
 
187
BYTE gcc_client_network_data_expected[44] =
188
188
                "\x03\xC0\x2C\x00\x03\x00\x00\x00\x72\x64\x70\x64\x72\x00\x00\x00"
189
189
                "\x00\x00\x80\x80\x63\x6c\x69\x70\x72\x64\x72\x00\x00\x00\xA0\xC0"
190
190
                "\x72\x64\x70\x73\x6e\x64\x00\x00\x00\x00\x00\xc0";
191
191
 
192
192
void test_gcc_write_client_network_data(void)
193
193
{
194
 
        STREAM* s;
 
194
        wStream* s;
195
195
        rdpSettings* settings;
196
196
 
197
197
        s = stream_new(44);
198
 
        settings = settings_new(NULL);
199
 
 
200
 
        settings->num_channels = 3;
201
 
        memset(settings->channels, 0, sizeof(rdpChannel) * settings->num_channels);
202
 
 
203
 
        strcpy(settings->channels[0].name, "rdpdr");
204
 
        settings->channels[0].options = 0x80800000;
205
 
 
206
 
        strcpy(settings->channels[1].name, "cliprdr");
207
 
        settings->channels[1].options = 0xc0A00000;
208
 
 
209
 
        strcpy(settings->channels[2].name, "rdpsnd");
210
 
        settings->channels[2].options = 0xc0000000;
 
198
        settings = freerdp_settings_new(NULL);
 
199
 
 
200
        settings->ChannelCount = 3;
 
201
        memset(settings->ChannelDefArray, 0, sizeof(rdpChannel) * settings->ChannelCount);
 
202
 
 
203
        strcpy(settings->ChannelDefArray[0].Name, "rdpdr");
 
204
        settings->ChannelDefArray[0].options = 0x80800000;
 
205
 
 
206
        strcpy(settings->ChannelDefArray[1].Name, "cliprdr");
 
207
        settings->ChannelDefArray[1].options = 0xc0A00000;
 
208
 
 
209
        strcpy(settings->ChannelDefArray[2].Name, "rdpsnd");
 
210
        settings->ChannelDefArray[2].options = 0xc0000000;
211
211
 
212
212
        gcc_write_client_network_data(s, settings);
213
213
 
214
 
        ASSERT_STREAM(s, (uint8*) gcc_client_network_data_expected, sizeof(gcc_client_network_data_expected));
 
214
        ASSERT_STREAM(s, (BYTE*) gcc_client_network_data_expected, sizeof(gcc_client_network_data_expected));
215
215
}