Changeset 572
- Timestamp:
- 08/04/08 18:09:53
- Files:
-
- openpgpsdk/trunk/src/app/openpgp.c (modified) (5 diffs)
- openpgpsdk/trunk/tests/test_cmdline.c (modified) (1 diff)
- openpgpsdk/trunk/tests/test_common.c (modified) (3 diffs)
- openpgpsdk/trunk/tests/test_packet_types.c (modified) (2 diffs)
- openpgpsdk/trunk/tests/test_rsa_decrypt.c (modified) (3 diffs)
- openpgpsdk/trunk/tests/test_rsa_encrypt.c (modified) (8 diffs)
- openpgpsdk/trunk/tests/test_rsa_keys.c (modified) (3 diffs)
- openpgpsdk/trunk/tests/test_rsa_signature.c (modified) (2 diffs)
- openpgpsdk/trunk/tests/test_rsa_verify.c (modified) (6 diffs)
- openpgpsdk/trunk/tests/tests.h (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
openpgpsdk/trunk/src/app/openpgp.c
r571 r572 42 42 static const char* usage="%s --list-keys | --encrypt | --decrypt | --sign | --clearsign | --verify [--keyring=<keyring>] [--userid=<userid>] [--filename=<filename>] [--armour] [--homedir=<homedir>]\n"; 43 43 static const char* usage_list_keys="%s --list-keys [--keyring=<keyring>]\n"; 44 // \todo static const char* usage_list_packets="%s --list-packets \n"; 44 45 static const char* usage_find_key="%s --find-key --userid=<userid> [--keyring=<keyring>] \n"; 45 46 static const char* usage_export_key="%s --export-key --userid=<userid> [--keyring=<keyring>] \n"; … … 57 58 // commands 58 59 LIST_KEYS=1, 60 // \todo LIST_PACKETS, 59 61 FIND_KEY, 60 62 EXPORT_KEY, … … 80 82 // commands 81 83 { "list-keys", no_argument, NULL, LIST_KEYS }, 84 //\todo { "list-packets", no_argument, NULL, LIST_PACKETS }, 82 85 { "find-key", no_argument, NULL, FIND_KEY }, 83 86 { "export-key", no_argument, NULL, EXPORT_KEY }, … … 182 185 break; 183 186 187 /* \todo 188 case LIST_PACKETS: 189 cmd=LIST_PACKETS; 190 break; 191 */ 192 184 193 case FIND_KEY: 185 194 cmd=FIND_KEY; … … 327 336 break; 328 337 338 //case LIST_PACKETS: 339 329 340 case FIND_KEY: 330 341 if (!got_userid) openpgpsdk/trunk/tests/test_cmdline.c
r570 r572 37 37 snprintf(openpgp,MAXBUF,"%s/../../src/app/openpgp", dir); 38 38 39 create_ testfile(testfile_encrypt);40 create_ testfile(testfile_sign);41 create_ testfile(testfile_clearsign);39 create_small_testfile(testfile_encrypt); 40 create_small_testfile(testfile_sign); 41 create_small_testfile(testfile_clearsign); 42 42 43 43 // Return success openpgpsdk/trunk/tests/test_common.c
r570 r572 215 215 } 216 216 217 char* create_testtext(const char *text )218 { 219 const unsigned int repeats=10;217 char* create_testtext(const char *text, const unsigned int repeats) 218 { 219 //const unsigned int repeats=10; 220 220 unsigned int i=0; 221 221 … … 259 259 } 260 260 261 void create_testfile(const char *name) 261 void create_small_testfile(const char* name) 262 { 263 const unsigned int repeats=10; 264 create_testfile(name, repeats); 265 } 266 267 void create_large_testfile(const char* name) 268 { 269 const unsigned int repeats=10^6; 270 create_testfile(name, repeats); 271 } 272 273 void create_testfile(const char *name, const unsigned int repeats) 262 274 { 263 275 char filename[MAXBUF+1]; … … 273 285 return; 274 286 275 testtext=create_testtext(name );287 testtext=create_testtext(name, repeats); 276 288 write(fd,testtext,strlen(testtext)); 277 289 close(fd); openpgpsdk/trunk/tests/test_packet_types.c
r570 r572 163 163 164 164 // create test string 165 testtext=create_testtext("literal data packet text"); 165 int repeats=10; 166 testtext=create_testtext("literal data packet text",repeats); 166 167 167 168 // initialise needed structures for writing into memory … … 269 270 270 271 // create test string 271 testtext=create_testtext("compressed literal data packet text - "); 272 int repeats=10; 273 testtext=create_testtext("compressed literal data packet text - ",repeats); 272 274 273 275 // initialise openpgpsdk/trunk/tests/test_rsa_decrypt.c
r570 r572 135 135 ops_memory_t* mem_out=NULL; 136 136 int rtn=0; 137 137 int repeats=10; 138 138 139 // open encrypted file 139 140 snprintf(encfile,sizeof encfile,"%s/%s.%s",dir, … … 171 172 172 173 // File contents should match 173 testtext=create_testtext(filename );174 testtext=create_testtext(filename,repeats); 174 175 CU_ASSERT(strlen(testtext)==ops_memory_get_length(mem_out)); 175 176 CU_ASSERT(memcmp(ops_memory_get_data(mem_out), … … 216 217 217 218 // Create file with unique text matching this test 218 create_ testfile(filename);219 create_small_testfile(filename); 219 220 220 221 // Encrypt file using GPG openpgpsdk/trunk/tests/test_rsa_encrypt.c
r570 r572 38 38 static char *filename_rsa_armour_nopassphrase_singlekey="enc_rsa_armour_np_singlekey.txt"; 39 39 static char *filename_rsa_armour_passphrase_singlekey="enc_rsa_armour_pp_singlekey.txt"; 40 static char *filename_rsa_large_noarmour_nopassphrase="enc_rsa_large_noarmour_np.txt"; 41 static char *filename_rsa_large_armour_nopassphrase="enc_rsa_large_armour_np.txt"; 40 42 41 43 static ops_parse_cb_return_t … … 109 111 // Create RSA test files 110 112 111 create_testfile(filename_rsa_noarmour_nopassphrase_singlekey); 112 create_testfile(filename_rsa_noarmour_passphrase_singlekey); 113 create_testfile(filename_rsa_armour_nopassphrase_singlekey); 114 create_testfile(filename_rsa_armour_passphrase_singlekey); 113 create_small_testfile(filename_rsa_noarmour_nopassphrase_singlekey); 114 create_small_testfile(filename_rsa_noarmour_passphrase_singlekey); 115 create_small_testfile(filename_rsa_armour_nopassphrase_singlekey); 116 create_small_testfile(filename_rsa_armour_passphrase_singlekey); 117 create_large_testfile(filename_rsa_large_noarmour_nopassphrase); 118 create_large_testfile(filename_rsa_large_armour_nopassphrase); 115 119 116 120 // Return success … … 174 178 char pp[MAXBUF]; 175 179 ops_boolean_t allow_overwrite=ops_true; 180 int repeats=10; 176 181 177 182 // filenames … … 192 197 snprintf(pp,sizeof pp," --passphrase %s ", bravo_passphrase); 193 198 snprintf(decrypted_file,sizeof decrypted_file,"%s/decrypted_%s",dir,filename); 194 snprintf(cmd,sizeof cmd," %s --decrypt --output=%s %s %s",gpgcmd, decrypted_file, pp, encrypted_file);199 snprintf(cmd,sizeof cmd,"cat %s | %s --decrypt --output=%s %s",encrypted_file, gpgcmd, decrypted_file, pp); 195 200 //printf("cmd: %s\n", cmd); 196 201 rtn=system(cmd); … … 200 205 // File contents should match - checking with OPS 201 206 202 testtext=create_testtext(filename );207 testtext=create_testtext(filename,repeats); 203 208 test_rsa_decrypt(encrypted_file,testtext, use_armour); 204 209 … … 229 234 int armour=1; 230 235 test_rsa_encrypt(armour,filename_rsa_armour_passphrase_singlekey,bravo_pub_keydata); 236 } 237 238 static void test_rsa_encrypt_large_noarmour_nopassphrase(void) 239 { 240 int armour=0; 241 test_rsa_encrypt(armour,filename_rsa_large_noarmour_nopassphrase, alpha_pub_keydata); 242 } 243 244 static void test_rsa_encrypt_large_armour_nopassphrase(void) 245 { 246 int armour=1; 247 test_rsa_encrypt(armour,filename_rsa_large_armour_nopassphrase, alpha_pub_keydata); 231 248 } 232 249 … … 240 257 CU_FAIL("Test TODO: Encrypt to multiple keys where my keys is (a) first key in list; (b) last key in list; (c) in the middle of the list"); 241 258 CU_FAIL("Test TODO: Encrypt to users with different preferences"); 259 CU_FAIL("Test TODO: Test large files"); 242 260 */ 243 CU_FAIL("Test TODO: Test large files");244 261 } 245 262 … … 258 275 259 276 if (NULL == CU_add_test(suite, "Armoured, single key, passphrase", test_rsa_encrypt_armour_passphrase_singlekey)) 277 return 0; 278 279 if (NULL == CU_add_test(suite, "Large, no armour, no passphrase", test_rsa_encrypt_large_noarmour_nopassphrase)) 280 return 0; 281 282 if (NULL == CU_add_test(suite, "Large, armour, no passphrase", test_rsa_encrypt_large_armour_nopassphrase)) 260 283 return 0; 261 284 openpgpsdk/trunk/tests/test_rsa_keys.c
r570 r572 148 148 // Validate public key with GPG 149 149 150 snprintf(cmd, sizeof cmd, " %s --import --no-allow-non-selfsigned-uid %s", gpgcmd, filename);150 snprintf(cmd, sizeof cmd, "cat %s | %s --import --no-allow-non-selfsigned-uid", filename, gpgcmd); 151 151 rtn=system(cmd); 152 152 CU_ASSERT(rtn==0); … … 178 178 179 179 // validate with GPG 180 snprintf(cmd, sizeof cmd, " %s --import --no-allow-non-selfsigned-uid %s", gpgcmd, filename);180 snprintf(cmd, sizeof cmd, "cat %s | %s --import --no-allow-non-selfsigned-uid", filename, gpgcmd); 181 181 rtn=system(cmd); 182 182 CU_ASSERT(rtn==0); … … 314 314 315 315 // validate with GPG - should fail 316 snprintf(cmd, sizeof cmd, " %s --import --no-allow-non-selfsigned-uid %s", gpgcmd, filename);316 snprintf(cmd, sizeof cmd, "cat %s | %s --import --no-allow-non-selfsigned-uid", filename, gpgcmd); 317 317 rtn=system(cmd); 318 318 CU_ASSERT(rtn!=0); openpgpsdk/trunk/tests/test_rsa_signature.c
r570 r572 58 58 // Create test files 59 59 60 create_ testfile(filename_rsa_noarmour_nopassphrase);61 create_ testfile(filename_rsa_noarmour_passphrase);62 create_ testfile(filename_rsa_armour_nopassphrase);63 create_ testfile(filename_rsa_armour_passphrase);64 create_ testfile(filename_rsa_clearsign_file_nopassphrase);65 create_ testfile(filename_rsa_clearsign_file_passphrase);66 create_ testfile(filename_rsa_clearsign_buf_nopassphrase);67 create_ testfile(filename_rsa_clearsign_buf_passphrase);60 create_small_testfile(filename_rsa_noarmour_nopassphrase); 61 create_small_testfile(filename_rsa_noarmour_passphrase); 62 create_small_testfile(filename_rsa_armour_nopassphrase); 63 create_small_testfile(filename_rsa_armour_passphrase); 64 create_small_testfile(filename_rsa_clearsign_file_nopassphrase); 65 create_small_testfile(filename_rsa_clearsign_file_passphrase); 66 create_small_testfile(filename_rsa_clearsign_buf_nopassphrase); 67 create_small_testfile(filename_rsa_clearsign_buf_passphrase); 68 68 69 69 // Return success … … 163 163 { 164 164 165 snprintf(cmd,sizeof cmd,"%s --verify %s", gpgcmd, signed_file); 165 //snprintf(cmd,sizeof cmd,"%s --verify %s", gpgcmd, signed_file); 166 snprintf(cmd,sizeof cmd,"cat %s | %s --verify", signed_file, gpgcmd); 166 167 rtn=system(cmd); 167 168 CU_ASSERT(rtn==0); openpgpsdk/trunk/tests/test_rsa_verify.c
r570 r572 68 68 // Create SIGNED test files 69 69 70 create_ testfile(filename_rsa_armour_nopassphrase);71 create_ testfile(filename_rsa_armour_passphrase);72 73 create_ testfile(filename_rsa_v3sig);74 create_ testfile(filename_rsa_hash_md5);75 76 create_ testfile(filename_rsa_noarmour_nopassphrase);77 create_ testfile(filename_rsa_noarmour_passphrase);78 create_ testfile(filename_rsa_noarmour_fail_bad_sig);70 create_small_testfile(filename_rsa_armour_nopassphrase); 71 create_small_testfile(filename_rsa_armour_passphrase); 72 73 create_small_testfile(filename_rsa_v3sig); 74 create_small_testfile(filename_rsa_hash_md5); 75 76 create_small_testfile(filename_rsa_noarmour_nopassphrase); 77 create_small_testfile(filename_rsa_noarmour_passphrase); 78 create_small_testfile(filename_rsa_noarmour_fail_bad_sig); 79 79 80 80 // Now sign the test files with GPG 81 81 82 snprintf(cmd,sizeof cmd,"%s --openpgp --compress-level 0 --sign --local-user %s %s/%s", 82 snprintf(cmd,sizeof cmd,"cat %s/%s | %s --openpgp --compress-level 0 --sign --local-user %s > %s/%s.gpg", 83 dir, filename_rsa_noarmour_nopassphrase, 83 84 gpgcmd, alpha_name, dir, filename_rsa_noarmour_nopassphrase); 84 85 if (system(cmd)) 85 86 { return 1; } 86 87 87 snprintf(cmd,sizeof cmd,"%s --openpgp --compress-level 0 --sign --local-user %s --armor %s/%s", 88 snprintf(cmd,sizeof cmd,"cat %s/%s | %s --openpgp --compress-level 0 --sign --local-user %s --armor > %s/%s.asc", 89 dir, filename_rsa_armour_nopassphrase, 88 90 gpgcmd, alpha_name, dir, filename_rsa_armour_nopassphrase); 89 91 if (system(cmd)) 90 92 { return 1; } 91 93 92 snprintf(cmd,sizeof cmd,"%s --openpgp --compress-level 0 --sign --local-user %s --passphrase %s %s/%s", 94 snprintf(cmd,sizeof cmd,"cat %s/%s | %s --openpgp --compress-level 0 --sign --local-user %s --passphrase %s > %s/%s.gpg", 95 dir, filename_rsa_noarmour_passphrase, 93 96 gpgcmd, bravo_name, bravo_passphrase, dir, filename_rsa_noarmour_passphrase); 94 97 if (system(cmd)) 95 98 { return 1; } 96 99 97 snprintf(cmd,sizeof cmd,"%s --openpgp --compress-level 0 --sign --local-user %s --passphrase %s --armor %s/%s", 100 snprintf(cmd,sizeof cmd,"cat %s/%s | %s --openpgp --compress-level 0 --sign --local-user %s --passphrase %s --armor > %s/%s.asc", 101 dir, filename_rsa_armour_passphrase, 98 102 gpgcmd, bravo_name, bravo_passphrase, dir, filename_rsa_armour_passphrase); 99 103 if (system(cmd)) 100 104 { return 1; } 101 105 102 snprintf(cmd,sizeof cmd,"%s --openpgp --compress-level 0 --sign --local-user %s %s/%s", 106 snprintf(cmd,sizeof cmd,"cat %s/%s | %s --openpgp --compress-level 0 --sign --local-user %s > %s/%s.gpg", 107 dir, filename_rsa_noarmour_fail_bad_sig, 103 108 gpgcmd, alpha_name, dir, filename_rsa_noarmour_fail_bad_sig); 104 109 if (system(cmd)) … … 106 111 107 112 // V3 signature 108 snprintf(cmd,sizeof cmd,"%s --compress-level 0 --sign --force-v3-sigs --local-user %s %s/%s", 113 snprintf(cmd,sizeof cmd,"cat %s/%s | %s --compress-level 0 --sign --force-v3-sigs --local-user %s > %s/%s.gpg", 114 dir, filename_rsa_v3sig, 109 115 gpgcmd, alpha_name, dir, filename_rsa_v3sig); 110 116 if (system(cmd)) … … 112 118 113 119 // MD5 hash 114 snprintf(cmd,sizeof cmd,"%s --compress-level 0 --sign --digest-algo \"MD5\" --local-user %s %s/%s", 120 snprintf(cmd,sizeof cmd,"cat %s/%s | %s --compress-level 0 --sign --digest-algo \"MD5\" --local-user %s > %s/%s.gpg", 121 dir, filename_rsa_hash_md5, 115 122 gpgcmd, alpha_name, dir, filename_rsa_hash_md5); 116 123 if (system(cmd)) … … 121 128 */ 122 129 123 create_ testfile(filename_rsa_clearsign_nopassphrase);124 create_ testfile(filename_rsa_clearsign_passphrase);125 create_ testfile(filename_rsa_clearsign_fail_bad_sig);130 create_small_testfile(filename_rsa_clearsign_nopassphrase); 131 create_small_testfile(filename_rsa_clearsign_passphrase); 132 create_small_testfile(filename_rsa_clearsign_fail_bad_sig); 126 133 127 134 // and sign them 128 135 129 snprintf(cmd,sizeof cmd,"%s --openpgp --compress-level 0 --clearsign --textmode --local-user %s --armor %s/%s", 136 snprintf(cmd,sizeof cmd,"cat %s/%s | %s --openpgp --compress-level 0 --clearsign --textmode --local-user %s --armor > %s/%s.asc", 137 dir, filename_rsa_clearsign_nopassphrase, 130 138 gpgcmd, alpha_name, dir, filename_rsa_clearsign_nopassphrase); 131 139 if (system(cmd)) 132 140 { return 1; } 133 141 134 snprintf(cmd,sizeof cmd,"%s --openpgp --compress-level 0 --clearsign --textmode --local-user %s --passphrase %s --armor %s/%s", 142 snprintf(cmd,sizeof cmd,"cat %s/%s | %s --openpgp --compress-level 0 --clearsign --textmode --local-user %s --passphrase %s --armor > %s/%s.asc", 143 dir, filename_rsa_clearsign_passphrase, 135 144 gpgcmd, bravo_name, bravo_passphrase, dir, filename_rsa_clearsign_passphrase); 136 145 if (system(cmd)) 137 146 { return 1; } 138 147 139 snprintf(cmd,sizeof cmd,"%s --openpgp --compress-level 0 --clearsign --textmode --local-user %s --armor %s/%s", 148 snprintf(cmd,sizeof cmd,"cat %s/%s | %s --openpgp --compress-level 0 --clearsign --textmode --local-user %s --armor > %s/%s.asc", 149 dir, filename_rsa_clearsign_fail_bad_sig, 140 150 gpgcmd, alpha_name, dir, filename_rsa_clearsign_fail_bad_sig); 141 151 if (system(cmd)) … … 154 164 snprintf(filename, sizeof filename, "%s_%d.txt", 155 165 filename_rsa_noarmour_compress_base, level); 156 create_ testfile(filename);166 create_small_testfile(filename); 157 167 158 168 // just ZIP for now 159 snprintf(cmd,sizeof cmd,"%s --openpgp --compress-algo \"ZIP\" --compress-level %d --sign --local-user %s %s/%s", 169 snprintf(cmd,sizeof cmd,"cat %s/%s | %s --openpgp --compress-algo \"ZIP\" --compress-level %d --sign --local-user %s > %s/%s.gpg", 170 dir, filename, 160 171 gpgcmd, level, alpha_name, dir, filename); 161 172 if (system(cmd)) … … 167 178 snprintf(filename, sizeof filename, "%s_%d.txt", 168 179 filename_rsa_armour_compress_base, level); 169 create_testfile(filename); 170 171 snprintf(cmd,sizeof cmd,"%s --openpgp --compress-algo \"ZIP\" --compress-level %d --sign --armour --local-user %s %s/%s", 180 create_small_testfile(filename); 181 182 snprintf(cmd,sizeof cmd,"cat %s/%s | %s --openpgp --compress-algo \"ZIP\" --compress-level %d --sign --armour --local-user %s > %s/%s.asc", 183 dir, filename, 172 184 gpgcmd, level, alpha_name, dir, filename); 173 185 if (system(cmd)) openpgpsdk/trunk/tests/tests.h
r570 r572 67 67 int mktmpdir(); 68 68 extern char dir[]; 69 char* create_testtext(const char *text );69 char* create_testtext(const char *text, const unsigned int repeats); 70 70 void create_testdata(const char *text, unsigned char *buf, const int maxlen); 71 void create_testfile(const char *name); 71 void create_small_testfile(const char *name); 72 void create_large_testfile(const char *name); 73 void create_testfile(const char *name, const unsigned int repeats); 72 74 #define MAXBUF 1024 73 75
