aboutsummaryrefslogtreecommitdiffstats
path: root/OpenKeychain/src/main/res
diff options
context:
space:
mode:
authorVincent Breitmoser <valodim@mugenguild.com>2015-03-08 01:49:22 +0100
committerVincent Breitmoser <valodim@mugenguild.com>2015-03-08 01:49:22 +0100
commit2b5023a75d0c98738ed1aea2ea89de007cf2e3d7 (patch)
tree8617aa8dcad7e32c9cb5b8483534d888aaf0c7d0 /OpenKeychain/src/main/res
parent581cad5b3f7b54fae652e2598b4e760eb19678d2 (diff)
parent4f11fb5a2f08ecf5fb81c86d590d04387cd1cd9a (diff)
downloadopen-keychain-2b5023a75d0c98738ed1aea2ea89de007cf2e3d7.tar.gz
open-keychain-2b5023a75d0c98738ed1aea2ea89de007cf2e3d7.tar.bz2
open-keychain-2b5023a75d0c98738ed1aea2ea89de007cf2e3d7.zip
Merge branch 'development' into linked-identities
Conflicts: OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyActivity.java
Diffstat (limited to 'OpenKeychain/src/main/res')
-rw-r--r--OpenKeychain/src/main/res/drawable-hdpi/ic_action_accounts.pngbin669 -> 0 bytes
-rw-r--r--OpenKeychain/src/main/res/drawable-hdpi/ic_vpn_key_grey_24dp.pngbin0 -> 391 bytes
-rw-r--r--OpenKeychain/src/main/res/drawable-mdpi/ic_action_accounts.pngbin499 -> 0 bytes
-rw-r--r--OpenKeychain/src/main/res/drawable-mdpi/ic_vpn_key_grey_24dp.pngbin0 -> 301 bytes
-rw-r--r--OpenKeychain/src/main/res/drawable-xhdpi/ic_action_accounts.pngbin827 -> 0 bytes
-rw-r--r--OpenKeychain/src/main/res/drawable-xhdpi/ic_vpn_key_grey_24dp.pngbin0 -> 463 bytes
-rw-r--r--OpenKeychain/src/main/res/drawable-xxhdpi/ic_action_accounts.pngbin1212 -> 0 bytes
-rw-r--r--OpenKeychain/src/main/res/drawable-xxhdpi/ic_vpn_key_grey_24dp.pngbin0 -> 714 bytes
-rw-r--r--OpenKeychain/src/main/res/drawable-xxxhdpi/ic_action_accounts.pngbin1663 -> 0 bytes
-rw-r--r--OpenKeychain/src/main/res/drawable-xxxhdpi/ic_vpn_key_grey_24dp.pngbin0 -> 825 bytes
-rw-r--r--OpenKeychain/src/main/res/layout/add_user_id_dialog.xml3
-rw-r--r--OpenKeychain/src/main/res/layout/create_key_input_fragment.xml36
-rw-r--r--OpenKeychain/src/main/res/layout/decrypt_result_include.xml2
-rw-r--r--OpenKeychain/src/main/res/layout/passphrase_repeat_dialog.xml35
-rw-r--r--OpenKeychain/src/main/res/menu/encrypt_file_activity.xml5
-rw-r--r--OpenKeychain/src/main/res/menu/encrypt_text_activity.xml5
-rw-r--r--OpenKeychain/src/main/res/values/attr.xml14
-rw-r--r--OpenKeychain/src/main/res/values/strings.xml12
-rw-r--r--OpenKeychain/src/main/res/xml/adv_preferences.xml71
-rw-r--r--OpenKeychain/src/main/res/xml/preference_headers.xml2
20 files changed, 110 insertions, 75 deletions
diff --git a/OpenKeychain/src/main/res/drawable-hdpi/ic_action_accounts.png b/OpenKeychain/src/main/res/drawable-hdpi/ic_action_accounts.png
deleted file mode 100644
index 10c77d07d..000000000
--- a/OpenKeychain/src/main/res/drawable-hdpi/ic_action_accounts.png
+++ /dev/null
Binary files differ
diff --git a/OpenKeychain/src/main/res/drawable-hdpi/ic_vpn_key_grey_24dp.png b/OpenKeychain/src/main/res/drawable-hdpi/ic_vpn_key_grey_24dp.png
new file mode 100644
index 000000000..cbc93ca36
--- /dev/null
+++ b/OpenKeychain/src/main/res/drawable-hdpi/ic_vpn_key_grey_24dp.png
Binary files differ
diff --git a/OpenKeychain/src/main/res/drawable-mdpi/ic_action_accounts.png b/OpenKeychain/src/main/res/drawable-mdpi/ic_action_accounts.png
deleted file mode 100644
index 41b89b5b6..000000000
--- a/OpenKeychain/src/main/res/drawable-mdpi/ic_action_accounts.png
+++ /dev/null
Binary files differ
diff --git a/OpenKeychain/src/main/res/drawable-mdpi/ic_vpn_key_grey_24dp.png b/OpenKeychain/src/main/res/drawable-mdpi/ic_vpn_key_grey_24dp.png
new file mode 100644
index 000000000..7acfab4f4
--- /dev/null
+++ b/OpenKeychain/src/main/res/drawable-mdpi/ic_vpn_key_grey_24dp.png
Binary files differ
diff --git a/OpenKeychain/src/main/res/drawable-xhdpi/ic_action_accounts.png b/OpenKeychain/src/main/res/drawable-xhdpi/ic_action_accounts.png
deleted file mode 100644
index ee8067c7d..000000000
--- a/OpenKeychain/src/main/res/drawable-xhdpi/ic_action_accounts.png
+++ /dev/null
Binary files differ
diff --git a/OpenKeychain/src/main/res/drawable-xhdpi/ic_vpn_key_grey_24dp.png b/OpenKeychain/src/main/res/drawable-xhdpi/ic_vpn_key_grey_24dp.png
new file mode 100644
index 000000000..49a44704c
--- /dev/null
+++ b/OpenKeychain/src/main/res/drawable-xhdpi/ic_vpn_key_grey_24dp.png
Binary files differ
diff --git a/OpenKeychain/src/main/res/drawable-xxhdpi/ic_action_accounts.png b/OpenKeychain/src/main/res/drawable-xxhdpi/ic_action_accounts.png
deleted file mode 100644
index d9b5cc007..000000000
--- a/OpenKeychain/src/main/res/drawable-xxhdpi/ic_action_accounts.png
+++ /dev/null
Binary files differ
diff --git a/OpenKeychain/src/main/res/drawable-xxhdpi/ic_vpn_key_grey_24dp.png b/OpenKeychain/src/main/res/drawable-xxhdpi/ic_vpn_key_grey_24dp.png
new file mode 100644
index 000000000..6e1aa32c4
--- /dev/null
+++ b/OpenKeychain/src/main/res/drawable-xxhdpi/ic_vpn_key_grey_24dp.png
Binary files differ
diff --git a/OpenKeychain/src/main/res/drawable-xxxhdpi/ic_action_accounts.png b/OpenKeychain/src/main/res/drawable-xxxhdpi/ic_action_accounts.png
deleted file mode 100644
index be1bc9ef4..000000000
--- a/OpenKeychain/src/main/res/drawable-xxxhdpi/ic_action_accounts.png
+++ /dev/null
Binary files differ
diff --git a/OpenKeychain/src/main/res/drawable-xxxhdpi/ic_vpn_key_grey_24dp.png b/OpenKeychain/src/main/res/drawable-xxxhdpi/ic_vpn_key_grey_24dp.png
new file mode 100644
index 000000000..2ea2bf77c
--- /dev/null
+++ b/OpenKeychain/src/main/res/drawable-xxxhdpi/ic_vpn_key_grey_24dp.png
Binary files differ
diff --git a/OpenKeychain/src/main/res/layout/add_user_id_dialog.xml b/OpenKeychain/src/main/res/layout/add_user_id_dialog.xml
index 79137bf51..c1b97b02c 100644
--- a/OpenKeychain/src/main/res/layout/add_user_id_dialog.xml
+++ b/OpenKeychain/src/main/res/layout/add_user_id_dialog.xml
@@ -8,13 +8,12 @@
android:paddingLeft="24dp"
android:paddingRight="24dp">
- <org.sufficientlysecure.keychain.ui.widget.AutoCorrectAutoCompleteTextView
+ <org.sufficientlysecure.keychain.ui.widget.EmailEditText
android:id="@+id/add_user_id_address"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/label_email"
android:imeOptions="actionNext"
- android:inputType="textAutoCorrect|textEmailAddress"
android:textAppearance="?android:attr/textAppearanceMedium" />
<org.sufficientlysecure.keychain.ui.widget.AutoCorrectAutoCompleteTextView
diff --git a/OpenKeychain/src/main/res/layout/create_key_input_fragment.xml b/OpenKeychain/src/main/res/layout/create_key_input_fragment.xml
index d817f9269..b320885d0 100644
--- a/OpenKeychain/src/main/res/layout/create_key_input_fragment.xml
+++ b/OpenKeychain/src/main/res/layout/create_key_input_fragment.xml
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:custom="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
@@ -42,13 +43,12 @@
android:hint="@string/create_key_hint_full_name"
android:ems="10" />
- <org.sufficientlysecure.keychain.ui.widget.AutoCorrectAutoCompleteTextView
+ <org.sufficientlysecure.keychain.ui.widget.EmailEditText
android:id="@+id/create_key_email"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="8dp"
android:imeOptions="actionNext"
- android:inputType="textAutoCorrect|textEmailAddress"
android:hint="@string/label_email"
android:ems="10" />
@@ -58,17 +58,33 @@
android:layout_height="wrap_content"
android:text="@string/label_passphrase" />
- <EditText
- android:id="@+id/create_key_passphrase"
+ <FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
- android:layout_marginBottom="8dp"
- android:imeOptions="actionNext"
- android:inputType="textPassword"
- android:hint="@string/label_passphrase"
- android:ems="10"
- android:layout_gravity="center_horizontal" />
+ android:layout_marginBottom="8dp">
+
+ <org.sufficientlysecure.keychain.ui.widget.PasswordEditText
+ android:id="@+id/create_key_passphrase"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:imeOptions="actionNext"
+ android:hint="@string/label_passphrase"
+ android:ems="10"
+ android:layout_gravity="center_horizontal" />
+
+ <org.sufficientlysecure.keychain.ui.widget.passwordstrengthindicator.PasswordStrengthBarView
+ android:id="@+id/create_key_passphrase_strength"
+ android:layout_width="48dp"
+ android:layout_height="8dp"
+ android:layout_gravity="end|center_vertical"
+ custom:strength="medium"
+ custom:showGuides="false"
+ custom:color_fail="@color/android_red_light"
+ custom:color_weak="@color/android_orange_light"
+ custom:color_strong="@color/android_green_light" />
+
+ </FrameLayout>
<EditText
android:id="@+id/create_key_passphrase_again"
diff --git a/OpenKeychain/src/main/res/layout/decrypt_result_include.xml b/OpenKeychain/src/main/res/layout/decrypt_result_include.xml
index 7317e7742..9d47009b9 100644
--- a/OpenKeychain/src/main/res/layout/decrypt_result_include.xml
+++ b/OpenKeychain/src/main/res/layout/decrypt_result_include.xml
@@ -118,7 +118,7 @@
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:text="Show"
- android:drawableRight="@drawable/ic_action_accounts"
+ android:drawableRight="@drawable/ic_vpn_key_grey_24dp"
android:drawablePadding="8dp"
android:gravity="center_vertical"
style="@style/SelectableItem" />
diff --git a/OpenKeychain/src/main/res/layout/passphrase_repeat_dialog.xml b/OpenKeychain/src/main/res/layout/passphrase_repeat_dialog.xml
index 09e37ee56..11355bbc0 100644
--- a/OpenKeychain/src/main/res/layout/passphrase_repeat_dialog.xml
+++ b/OpenKeychain/src/main/res/layout/passphrase_repeat_dialog.xml
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:custom="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
@@ -14,17 +15,35 @@
android:layout_height="wrap_content"
android:text="@string/label_no_passphrase" />
- <EditText
- android:id="@+id/passphrase_passphrase"
+ <FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
- android:layout_marginBottom="8dp"
- android:imeOptions="actionNext"
- android:inputType="textPassword"
- android:hint="@string/label_passphrase"
- android:ems="10"
- android:layout_gravity="center_horizontal" />
+ android:layout_marginBottom="8dp">
+
+ <org.sufficientlysecure.keychain.ui.widget.PasswordEditText
+ android:id="@+id/passphrase_passphrase"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginTop="8dp"
+ android:layout_marginBottom="8dp"
+ android:imeOptions="actionNext"
+ android:hint="@string/label_passphrase"
+ android:ems="10"
+ android:layout_gravity="center_horizontal" />
+
+ <org.sufficientlysecure.keychain.ui.widget.passwordstrengthindicator.PasswordStrengthBarView
+ android:id="@+id/passphrase_repeat_passphrase_strength"
+ android:layout_width="48dp"
+ android:layout_height="8dp"
+ android:layout_gravity="end|center_vertical"
+ custom:strength="medium"
+ custom:showGuides="false"
+ custom:color_fail="@color/android_red_light"
+ custom:color_weak="@color/android_orange_light"
+ custom:color_strong="@color/android_green_light" />
+
+ </FrameLayout>
<EditText
android:id="@+id/passphrase_passphrase_again"
diff --git a/OpenKeychain/src/main/res/menu/encrypt_file_activity.xml b/OpenKeychain/src/main/res/menu/encrypt_file_activity.xml
index fd0a85d6c..9a26d1757 100644
--- a/OpenKeychain/src/main/res/menu/encrypt_file_activity.xml
+++ b/OpenKeychain/src/main/res/menu/encrypt_file_activity.xml
@@ -12,4 +12,9 @@
android:id="@+id/check_delete_after_encrypt"
android:title="@string/label_delete_after_encryption"
android:checkable="true" />
+ <item
+ android:id="@+id/check_enable_compression"
+ android:title="@string/label_enable_compression"
+ android:checked="true"
+ android:checkable="true" />
</menu> \ No newline at end of file
diff --git a/OpenKeychain/src/main/res/menu/encrypt_text_activity.xml b/OpenKeychain/src/main/res/menu/encrypt_text_activity.xml
index 8deb59514..71d254bb9 100644
--- a/OpenKeychain/src/main/res/menu/encrypt_text_activity.xml
+++ b/OpenKeychain/src/main/res/menu/encrypt_text_activity.xml
@@ -4,4 +4,9 @@
android:id="@+id/check_use_symmetric"
android:title="@string/label_symmetric"
android:checkable="true" />
+ <item
+ android:id="@+id/check_enable_compression"
+ android:title="@string/label_enable_compression"
+ android:checked="true"
+ android:checkable="true" />
</menu> \ No newline at end of file
diff --git a/OpenKeychain/src/main/res/values/attr.xml b/OpenKeychain/src/main/res/values/attr.xml
index 98ce1c364..7a2f3054e 100644
--- a/OpenKeychain/src/main/res/values/attr.xml
+++ b/OpenKeychain/src/main/res/values/attr.xml
@@ -15,4 +15,18 @@
</attr>
</declare-styleable>
+ <!-- Taken from Matt Allen Password Strength View
+ https://github.com/matt-allen/android-password-strength-indicator -->
+ <declare-styleable name="PasswordStrengthView">
+ <attr name="strength" format="enum">
+ <enum name="weak" value="0" />
+ <enum name="medium" value="1" />
+ <enum name="strong" value="2" />
+ </attr>
+ <attr name="showGuides" format="boolean" />
+ <attr name="color_fail" format="color" />
+ <attr name="color_weak" format="color" />
+ <attr name="color_strong" format="color" />
+ </declare-styleable>
+
</resources> \ No newline at end of file
diff --git a/OpenKeychain/src/main/res/values/strings.xml b/OpenKeychain/src/main/res/values/strings.xml
index 799008a2d..4a2be2eb8 100644
--- a/OpenKeychain/src/main/res/values/strings.xml
+++ b/OpenKeychain/src/main/res/values/strings.xml
@@ -162,6 +162,7 @@
<string name="expiry_date_dialog_title">"Set expiry date"</string>
<string name="label_first_keyserver_is_used">"(First keyserver listed is preferred)"</string>
<string name="label_preferred">"preferred"</string>
+ <string name="label_enable_compression">"Enable compression"</string>
<string name="user_id_no_name">"&lt;no name&gt;"</string>
<string name="none">"&lt;none&gt;"</string>
@@ -988,6 +989,7 @@
<string name="msg_dc_clear_meta_size_unknown">"File size is unknown"</string>
<string name="msg_dc_clear_meta_time">"Modification time: %s"</string>
<string name="msg_dc_clear_signature_bad">"Signature check NOT OK!"</string>
+ <string name="msg_dc_error_unsupported_hash_algo">"Unsupported and potentially insecure hash algorithm!"</string>
<string name="msg_dc_clear_signature_check">"Verifying signature data"</string>
<string name="msg_dc_clear_signature_ok">"Signature check OK"</string>
<string name="msg_dc_clear_signature">"Saving signature data for later"</string>
@@ -1003,7 +1005,7 @@
<string name="msg_dc_error_pgp_exception">"Encountered OpenPGP Exception during operation!"</string>
<string name="msg_dc_integrity_check_ok">"Integrity check OK!"</string>
<string name="msg_dc_ok_meta_only">"Only metadata was requested, skipping decryption"</string>
- <string name="msg_dc_ok">"OK"</string>
+ <string name="msg_dc_ok">"Decryption/Verification finished"</string>
<string name="msg_dc_pass_cached">"Using passphrase from cache"</string>
<string name="msg_dc_pending_nfc">"NFC token required, requesting user input…"</string>
<string name="msg_dc_pending_passphrase">"Passphrase required, requesting user input…"</string>
@@ -1015,6 +1017,7 @@
<string name="msg_dc_trail_sym">"Encountered trailing, symmetrically encrypted data"</string>
<string name="msg_dc_trail_unknown">"Encountered trailing data of unknown type"</string>
<string name="msg_dc_unlocking">"Unlocking secret key"</string>
+ <string name="msg_dc_old_symmetric_encryption_algo">"Potentially insecure encryption algorithm has been used!"</string>
<!-- Messages for VerifySignedLiteralData operation -->
<string name="msg_vl">"Starting signature check"</string>
@@ -1069,11 +1072,14 @@
<string name="msg_pse_symmetric">"Preparing symmetric encryption"</string>
<string name="msg_crt_certifying">"Generating certifications"</string>
- <string name="msg_crt_certify_all">"Certifying all user IDs for key %s"</string>
- <plurals name="msg_crt_certify_some">
+ <plurals name="msg_crt_certify_uids">
<item quantity="one">"Certifying one user ID for key %2$s"</item>
<item quantity="other">"Certifying %1$d user IDs for key %2$s"</item>
</plurals>
+ <plurals name="msg_crt_certify_uats">
+ <item quantity="one">"Certifying one user attribute for key %2$s"</item>
+ <item quantity="other">"Certifying %1$d user attributes for key %2$s"</item>
+ </plurals>
<string name="msg_crt_error_self">"Cannot issue self-certificate like this!"</string>
<string name="msg_crt_error_master_not_found">"Master key not found!"</string>
<string name="msg_crt_error_nothing">"No keys certified!"</string>
diff --git a/OpenKeychain/src/main/res/xml/adv_preferences.xml b/OpenKeychain/src/main/res/xml/adv_preferences.xml
index 02986bdad..7dd649e5d 100644
--- a/OpenKeychain/src/main/res/xml/adv_preferences.xml
+++ b/OpenKeychain/src/main/res/xml/adv_preferences.xml
@@ -1,52 +1,23 @@
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
- <PreferenceCategory android:title="@string/section_defaults">
- <CheckBoxPreference
- android:key="writeVersionHeader"
- android:persistent="false"
- android:title="@string/label_write_version_header"
- android:summary="@string/label_write_version_header_summary" />
- <org.sufficientlysecure.keychain.ui.widget.IntegerListPreference
- android:key="defaultEncryptionAlgorithm"
- android:persistent="false"
- android:title="@string/label_encryption_algorithm" />
- <org.sufficientlysecure.keychain.ui.widget.IntegerListPreference
- android:key="defaultHashAlgorithm"
- android:persistent="false"
- android:title="@string/label_hash_algorithm" />
- <org.sufficientlysecure.keychain.ui.widget.IntegerListPreference
- android:key="defaultMessageCompression"
- android:persistent="false"
- android:title="@string/label_message_compression" />
- <org.sufficientlysecure.keychain.ui.widget.IntegerListPreference
- android:key="defaultFileCompression"
- android:persistent="false"
- android:title="@string/label_file_compression" />
- <CheckBoxPreference
- android:key="defaultAsciiArmor"
- android:persistent="false"
- android:title="@string/label_ascii_armor" />
- </PreferenceCategory>
- <PreferenceCategory android:title="@string/section_passphrase_cache">
- <org.sufficientlysecure.keychain.ui.widget.IntegerListPreference
- android:entries="@array/passphrase_cache_ttl_entries"
- android:entryValues="@array/passphrase_cache_ttl_values"
- android:key="passphraseCacheTtl"
- android:persistent="false"
- android:title="@string/label_passphrase_cache_ttl" />
- <CheckBoxPreference
- android:key="passphraseCacheSubs"
- android:persistent="false"
- android:title="@string/label_passphrase_cache_subs" />
- <CheckBoxPreference
- android:key="useDefaultYubikeyPin"
- android:persistent="false"
- android:defaultValue="true"
- android:title="@string/label_use_default_yubikey_pin"
- android:summary="@string/label_label_use_default_yubikey_pin_summary" />
- <CheckBoxPreference
- android:key="useNumKeypadForYubikeyPin"
- android:persistent="false"
- android:defaultValue="false"
- android:title="@string/label_use_num_keypad_for_yubikey_pin" />
- </PreferenceCategory>
+ <org.sufficientlysecure.keychain.ui.widget.IntegerListPreference
+ android:entries="@array/passphrase_cache_ttl_entries"
+ android:entryValues="@array/passphrase_cache_ttl_values"
+ android:key="passphraseCacheTtl"
+ android:persistent="false"
+ android:title="@string/label_passphrase_cache_ttl" />
+ <CheckBoxPreference
+ android:key="passphraseCacheSubs"
+ android:persistent="false"
+ android:title="@string/label_passphrase_cache_subs" />
+ <CheckBoxPreference
+ android:key="useDefaultYubikeyPin"
+ android:persistent="false"
+ android:defaultValue="true"
+ android:title="@string/label_use_default_yubikey_pin"
+ android:summary="@string/label_label_use_default_yubikey_pin_summary" />
+ <CheckBoxPreference
+ android:key="useNumKeypadForYubikeyPin"
+ android:persistent="false"
+ android:defaultValue="false"
+ android:title="@string/label_use_num_keypad_for_yubikey_pin" />
</PreferenceScreen>
diff --git a/OpenKeychain/src/main/res/xml/preference_headers.xml b/OpenKeychain/src/main/res/xml/preference_headers.xml
index 347394b06..e3447ff48 100644
--- a/OpenKeychain/src/main/res/xml/preference_headers.xml
+++ b/OpenKeychain/src/main/res/xml/preference_headers.xml
@@ -4,5 +4,5 @@
android:title="@string/section_cloud_search" />
<header
android:fragment="org.sufficientlysecure.keychain.ui.SettingsActivity$AdvancedPrefsFragment"
- android:title="@string/section_advanced" />
+ android:title="@string/section_passphrase_cache" />
</preference-headers>