Add tests modifying existing extra fields.
diff --git a/regress/CMakeLists.txt b/regress/CMakeLists.txt index 9a1be81..8508031 100644 --- a/regress/CMakeLists.txt +++ b/regress/CMakeLists.txt
@@ -64,6 +64,8 @@ extra_get.test extra_get_by_id.test extra_set.test + extra_set_modify_c.test + extra_set_modify_l.test file_comment_encmismatch.test fopen_unchanged.test fread.test
diff --git a/regress/Makefile.am b/regress/Makefile.am index 4c52171..6905c9b 100644 --- a/regress/Makefile.am +++ b/regress/Makefile.am
@@ -27,6 +27,8 @@ broken.zip \ encrypt.zip \ encrypt_plus_extra.zip \ + encrypt_plus_extra_modified_c.zip \ + encrypt_plus_extra_modified_l.zip \ filename_duplicate.zip \ filename_empty.zip \ fileorder.zip \ @@ -141,6 +143,8 @@ extra_get.test \ extra_get_by_id.test \ extra_set.test \ + extra_set_modify_c.test \ + extra_set_modify_l.test \ file_comment_encmismatch.test \ fopen_unchanged.test \ fread.test \
diff --git a/regress/encrypt_plus_extra_modified_c.zip b/regress/encrypt_plus_extra_modified_c.zip new file mode 100644 index 0000000..f50d649 --- /dev/null +++ b/regress/encrypt_plus_extra_modified_c.zip Binary files differ
diff --git a/regress/encrypt_plus_extra_modified_l.zip b/regress/encrypt_plus_extra_modified_l.zip new file mode 100644 index 0000000..a546022 --- /dev/null +++ b/regress/encrypt_plus_extra_modified_l.zip Binary files differ
diff --git a/regress/extra_set_modify_c.test b/regress/extra_set_modify_c.test new file mode 100644 index 0000000..9f84ced --- /dev/null +++ b/regress/extra_set_modify_c.test
@@ -0,0 +1,17 @@ +# change existing central extra field +program modify +args encrypt.zip get_extra 0 0 c get_extra 0 1 c get_extra 0 2 c get_extra 0 0 l get_extra 0 1 l get_extra 0 2 l set_extra 0 2345 0 c Extrafieldcontent get_extra 0 0 c get_extra 0 1 c get_extra 0 2 c get_extra 0 0 l get_extra 0 1 l get_extra 0 2 l +file encrypt.zip encrypt_plus_extra.zip encrypt_plus_extra_modified_c.zip +return 0 +stdout Extra field 0x5455: len 5, data 0x033dda4c44 +stdout Extra field 0x7855: len 0 +stdout Extra field 0x0929: len 17, data 0x65787472616669656c64636f6e74656e74 +stdout Extra field 0x0929: len 17, data 0x65787472616669656c64636f6e74656e74 +stdout Extra field 0x5455: len 9, data 0x033dda4c444dda4c44 +stdout Extra field 0x7855: len 4, data 0x64001400 +stdout Extra field 0x5455: len 5, data 0x033dda4c44 +stdout Extra field 0x7855: len 0 +stdout Extra field 0x0929: len 17, data 0x45787472616669656c64636f6e74656e74 +stdout Extra field 0x0929: len 17, data 0x65787472616669656c64636f6e74656e74 +stdout Extra field 0x5455: len 9, data 0x033dda4c444dda4c44 +stdout Extra field 0x7855: len 4, data 0x64001400
diff --git a/regress/extra_set_modify_l.test b/regress/extra_set_modify_l.test new file mode 100644 index 0000000..0a838b6 --- /dev/null +++ b/regress/extra_set_modify_l.test
@@ -0,0 +1,17 @@ +# change existing local extra field +program modify +args encrypt.zip get_extra 0 0 c get_extra 0 1 c get_extra 0 2 c get_extra 0 0 l get_extra 0 1 l get_extra 0 2 l set_extra 0 2345 0 l Extrafieldcontent get_extra 0 0 c get_extra 0 1 c get_extra 0 2 c get_extra 0 0 l get_extra 0 1 l get_extra 0 2 l +file encrypt.zip encrypt_plus_extra.zip encrypt_plus_extra_modified_l.zip +return 0 +stdout Extra field 0x5455: len 5, data 0x033dda4c44 +stdout Extra field 0x7855: len 0 +stdout Extra field 0x0929: len 17, data 0x65787472616669656c64636f6e74656e74 +stdout Extra field 0x0929: len 17, data 0x65787472616669656c64636f6e74656e74 +stdout Extra field 0x5455: len 9, data 0x033dda4c444dda4c44 +stdout Extra field 0x7855: len 4, data 0x64001400 +stdout Extra field 0x5455: len 5, data 0x033dda4c44 +stdout Extra field 0x7855: len 0 +stdout Extra field 0x0929: len 17, data 0x65787472616669656c64636f6e74656e74 +stdout Extra field 0x0929: len 17, data 0x45787472616669656c64636f6e74656e74 +stdout Extra field 0x5455: len 9, data 0x033dda4c444dda4c44 +stdout Extra field 0x7855: len 4, data 0x64001400