[Secure Coding] master: Use unique XML source file names (#1000781) (8350ea4)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Repository : http://git.fedorahosted.org/git/?p=secure-coding.git

On branch  : master

>---------------------------------------------------------------

commit 8350ea4f6175e074e9d29b223b442e524fc552af
Author: Florian Weimer <fweimer@xxxxxxxxxx>
Date:   Mon Aug 26 15:25:46 2013 +0200

    Use unique XML source file names (#1000781)
    
    This helps Transifex translations.


>---------------------------------------------------------------

 .../en-US/{C/Allocators.xml => C-Allocators.xml}   |    0
 .../en-US/{C/Language.xml => C-Language.xml}       |    6 +-
 defensive-coding/en-US/{C/Libc.xml => C-Libc.xml}  |   14 ++--
 .../en-US/{C/Other.xml => C-Other.xml}             |    0
 defensive-coding/en-US/C.xml                       |   12 ++++
 defensive-coding/en-US/C/C.xml                     |   12 ----
 .../en-US/{CXX/Language.xml => CXX-Language.xml}   |    0
 .../en-US/{CXX/Std.xml => CXX-Std.xml}             |    0
 defensive-coding/en-US/{CXX => }/CXX.xml           |    4 +-
 defensive-coding/en-US/CXX/schemas.xml             |    4 -
 defensive-coding/en-US/Defensive_Coding.xml        |   26 ++++----
 ...hentication.xml => Features-Authentication.xml} |    0
 .../en-US/{Features/TLS.xml => Features-TLS.xml}   |   68 ++++++++++----------
 defensive-coding/en-US/Features/schemas.xml        |    4 -
 .../en-US/{Java/Language.xml => Java-Language.xml} |    6 +-
 .../en-US/{Java/LowLevel.xml => Java-LowLevel.xml} |    2 +-
 ...ecurityManager.xml => Java-SecurityManager.xml} |    8 +-
 defensive-coding/en-US/{Java => }/Java.xml         |    6 +-
 defensive-coding/en-US/Java/schemas.xml            |    5 --
 .../en-US/{Python/Language.xml => Python.xml}      |    0
 defensive-coding/en-US/Python/schemas.xml          |    4 -
 .../Cryptography.xml => Tasks-Cryptography.xml}    |    0
 .../Descriptors.xml => Tasks-Descriptors.xml}      |    0
 .../File_System.xml => Tasks-File_System.xml}      |    0
 ...Library_Design.xml => Tasks-Library_Design.xml} |    0
 .../en-US/{Tasks/Locking.xml => Tasks-Locking.xml} |    0
 .../{Tasks/Processes.xml => Tasks-Processes.xml}   |    0
 .../Serialization.xml => Tasks-Serialization.xml}  |   22 +++---
 ...mporary_Files.xml => Tasks-Temporary_Files.xml} |    0
 defensive-coding/en-US/Tasks/schemas.xml           |    4 -
 defensive-coding/en-US/{C => }/schemas.xml         |    2 +-
 31 files changed, 94 insertions(+), 115 deletions(-)

diff --git a/defensive-coding/en-US/C/Allocators.xml b/defensive-coding/en-US/C-Allocators.xml
similarity index 100%
rename from defensive-coding/en-US/C/Allocators.xml
rename to defensive-coding/en-US/C-Allocators.xml
diff --git a/defensive-coding/en-US/C/Language.xml b/defensive-coding/en-US/C-Language.xml
similarity index 97%
rename from defensive-coding/en-US/C/Language.xml
rename to defensive-coding/en-US/C-Language.xml
index db7cc5d..1f1c7d2 100644
--- a/defensive-coding/en-US/C/Language.xml
+++ b/defensive-coding/en-US/C-Language.xml
@@ -57,7 +57,7 @@
     </para>
     <example id="ex-Defensive_Coding-C-Pointers-remaining">
       <title>Array processing in C</title>
-      <xi:include href="snippets/Pointers-remaining.xml"
+      <xi:include href="C/snippets/Pointers-remaining.xml"
 		  xmlns:xi="http://www.w3.org/2001/XInclude"; />
     </example>
     <para>
@@ -83,7 +83,7 @@
     </para>
     <example id="ex-Defensive_Coding-C-Arithmetic-bad">
       <title>Incorrect overflow detection in C</title>
-      <xi:include href="snippets/Arithmetic-add.xml"
+      <xi:include href="C/snippets/Arithmetic-add.xml"
 		  xmlns:xi="http://www.w3.org/2001/XInclude"; />
     </example>
     <para>
@@ -119,7 +119,7 @@
     </itemizedlist>
     <example id="ex-Defensive_Coding-C-Arithmetic-mult">
       <title>Overflow checking for unsigned multiplication</title>
-      <xi:include href="snippets/Arithmetic-mult.xml"
+      <xi:include href="C/snippets/Arithmetic-mult.xml"
 		  xmlns:xi="http://www.w3.org/2001/XInclude"; />
     </example>
     <para>
diff --git a/defensive-coding/en-US/C/Libc.xml b/defensive-coding/en-US/C-Libc.xml
similarity index 96%
rename from defensive-coding/en-US/C/Libc.xml
rename to defensive-coding/en-US/C-Libc.xml
index 970f5bf..50abb8a 100644
--- a/defensive-coding/en-US/C/Libc.xml
+++ b/defensive-coding/en-US/C-Libc.xml
@@ -184,7 +184,7 @@
 	<function>asprintf</function> instead.)
       </para>
       <informalexample>
-	<xi:include href="snippets/String-Functions-snprintf.xml"
+	<xi:include href="C/snippets/String-Functions-snprintf.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </informalexample>
       <para>
@@ -212,7 +212,7 @@
       </para>
       <example id="ex-Defensive_Coding-C-String-Functions-snprintf-incremental">
 	<title>Repeatedly writing to a buffer using <function>snprintf</function></title>
-	<xi:include href="snippets/String-Functions-snprintf-incremental.xml"
+	<xi:include href="C/snippets/String-Functions-snprintf-incremental.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
       <para>
@@ -244,7 +244,7 @@
       </para>
       <example id="ex-Defensive_Coding-C-String-Functions-format-Attribute">
 	<title>The <literal>format</literal> function attribute</title>
-	<xi:include href="snippets/String-Functions-format.xml"
+	<xi:include href="C/snippets/String-Functions-format.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
     </section>
@@ -256,7 +256,7 @@
 	ensuring NUL termination is:
       </para>
       <informalexample>
-	<xi:include href="snippets/String-Functions-strncpy.xml"
+	<xi:include href="C/snippets/String-Functions-strncpy.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </informalexample>
       <para>
@@ -264,7 +264,7 @@
 	function for this purpose:
       </para>
       <informalexample>
-	<xi:include href="snippets/String-Functions-strncat-as-strncpy.xml"
+	<xi:include href="C/snippets/String-Functions-strncat-as-strncpy.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </informalexample>
     </section>
@@ -289,7 +289,7 @@
 	linkend="ex-Defensive_Coding-C-String-Functions-snprintf-incremental"/>:
       </para>
       <informalexample>
-	<xi:include href="snippets/String-Functions-strncat-emulation.xml"
+	<xi:include href="C/snippets/String-Functions-strncat-emulation.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </informalexample>
       <para>
@@ -298,7 +298,7 @@
 	string:
       </para>
       <informalexample>
-	<xi:include href="snippets/String-Functions-strncat-merged.xml"
+	<xi:include href="C/snippets/String-Functions-strncat-merged.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </informalexample>
       <para>
diff --git a/defensive-coding/en-US/C/Other.xml b/defensive-coding/en-US/C-Other.xml
similarity index 100%
rename from defensive-coding/en-US/C/Other.xml
rename to defensive-coding/en-US/C-Other.xml
diff --git a/defensive-coding/en-US/C.xml b/defensive-coding/en-US/C.xml
new file mode 100644
index 0000000..4d895f9
--- /dev/null
+++ b/defensive-coding/en-US/C.xml
@@ -0,0 +1,12 @@
+<?xml version='1.0' encoding='utf-8' ?>
+<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"; [
+]>
+<chapter id="chap-Defensive_Coding-C">
+	<title>The C Programming Language</title>
+
+    <xi:include href="C-Language.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
+    <xi:include href="C-Libc.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
+    <xi:include href="C-Allocators.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
+    <xi:include href="C-Other.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
+</chapter>
+
diff --git a/defensive-coding/en-US/C/C.xml b/defensive-coding/en-US/C/C.xml
deleted file mode 100644
index e8da3db..0000000
--- a/defensive-coding/en-US/C/C.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version='1.0' encoding='utf-8' ?>
-<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"; [
-]>
-<chapter id="chap-Defensive_Coding-C">
-	<title>The C Programming Language</title>
-
-    <xi:include href="Language.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
-    <xi:include href="Libc.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
-    <xi:include href="Allocators.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
-    <xi:include href="Other.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
-</chapter>
-
diff --git a/defensive-coding/en-US/CXX/Language.xml b/defensive-coding/en-US/CXX-Language.xml
similarity index 100%
rename from defensive-coding/en-US/CXX/Language.xml
rename to defensive-coding/en-US/CXX-Language.xml
diff --git a/defensive-coding/en-US/CXX/Std.xml b/defensive-coding/en-US/CXX-Std.xml
similarity index 100%
rename from defensive-coding/en-US/CXX/Std.xml
rename to defensive-coding/en-US/CXX-Std.xml
diff --git a/defensive-coding/en-US/CXX/CXX.xml b/defensive-coding/en-US/CXX.xml
similarity index 61%
rename from defensive-coding/en-US/CXX/CXX.xml
rename to defensive-coding/en-US/CXX.xml
index fccfb75..8c55567 100644
--- a/defensive-coding/en-US/CXX/CXX.xml
+++ b/defensive-coding/en-US/CXX.xml
@@ -4,7 +4,7 @@
 <chapter id="chap-Defensive_Coding-CXX">
   <title>The C++ Programming Language</title>
 
-  <xi:include href="Language.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
-  <xi:include href="Std.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
+  <xi:include href="CXX-Language.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
+  <xi:include href="CXX-Std.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
 </chapter>
 
diff --git a/defensive-coding/en-US/CXX/schemas.xml b/defensive-coding/en-US/CXX/schemas.xml
deleted file mode 100644
index 8e84245..0000000
--- a/defensive-coding/en-US/CXX/schemas.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0"?>
-<locatingRules xmlns="http://thaiopensource.com/ns/locating-rules/1.0";>
-  <include rules="../../schemas.xml"/>
-</locatingRules>
diff --git a/defensive-coding/en-US/Defensive_Coding.xml b/defensive-coding/en-US/Defensive_Coding.xml
index eb6e763..b8ca3de 100644
--- a/defensive-coding/en-US/Defensive_Coding.xml
+++ b/defensive-coding/en-US/Defensive_Coding.xml
@@ -4,25 +4,25 @@
   <xi:include href="Book_Info.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
   <part>
     <title>Programming Languages</title>
-    <xi:include href="C/C.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
-    <xi:include href="CXX/CXX.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
-    <xi:include href="Java/Java.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
-    <xi:include href="Python/Language.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
+    <xi:include href="C.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
+    <xi:include href="CXX.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
+    <xi:include href="Java.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
+    <xi:include href="Python.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
   </part>
   <part>
     <title>Specific Programming Tasks</title>
-    <xi:include href="Tasks/Library_Design.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
-    <xi:include href="Tasks/Descriptors.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
-    <xi:include href="Tasks/File_System.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
-    <xi:include href="Tasks/Temporary_Files.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
-    <xi:include href="Tasks/Processes.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
-    <xi:include href="Tasks/Serialization.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
-    <xi:include href="Tasks/Cryptography.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
+    <xi:include href="Tasks-Library_Design.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
+    <xi:include href="Tasks-Descriptors.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
+    <xi:include href="Tasks-File_System.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
+    <xi:include href="Tasks-Temporary_Files.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
+    <xi:include href="Tasks-Processes.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
+    <xi:include href="Tasks-Serialization.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
+    <xi:include href="Tasks-Cryptography.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
   </part>
   <part>
     <title>Implementing Security Features</title>
-    <xi:include href="Features/Authentication.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
-    <xi:include href="Features/TLS.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
+    <xi:include href="Features-Authentication.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
+    <xi:include href="Features-TLS.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
   </part>
     <xi:include href="Revision_History.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
 </book>
diff --git a/defensive-coding/en-US/Features/Authentication.xml b/defensive-coding/en-US/Features-Authentication.xml
similarity index 100%
rename from defensive-coding/en-US/Features/Authentication.xml
rename to defensive-coding/en-US/Features-Authentication.xml
diff --git a/defensive-coding/en-US/Features/TLS.xml b/defensive-coding/en-US/Features-TLS.xml
similarity index 94%
rename from defensive-coding/en-US/Features/TLS.xml
rename to defensive-coding/en-US/Features-TLS.xml
index 753da69..71b9214 100644
--- a/defensive-coding/en-US/Features/TLS.xml
+++ b/defensive-coding/en-US/Features-TLS.xml
@@ -54,7 +54,7 @@
 	</para>
 	<example id="ex-Defensive_Coding-TLS-Nagle">
 	  <title>Deactivating the TCP Nagle algorithm</title>
-	  <xi:include href="snippets/TLS-Nagle.xml"
+	  <xi:include href="Features/snippets/TLS-Nagle.xml"
 		      xmlns:xi="http://www.w3.org/2001/XInclude"; />
 	</example>
       </listitem>
@@ -147,7 +147,7 @@
       </para>
       <example id="ex-Defensive_Coding-TLS-OpenSSL-Errors">
 	<title>Obtaining OpenSSL error codes</title>
-	<xi:include href="snippets/TLS-OpenSSL-Errors.xml"
+	<xi:include href="Features/snippets/TLS-OpenSSL-Errors.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
       <para>
@@ -374,7 +374,7 @@
       </para>
       <example id="ex-Defensive_Coding-TLS-OpenSSL-Init">
 	<title>OpenSSL library initialization</title>
-	<xi:include href="snippets/TLS-Client-OpenSSL-Init.xml"
+	<xi:include href="Features/snippets/TLS-Client-OpenSSL-Init.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
       <para>
@@ -392,7 +392,7 @@
       </para>
       <example id="ex-Defensive_Coding-TLS-Client-OpenSSL-CTX">
 	<title>OpenSSL client context creation</title>
-	<xi:include href="snippets/TLS-Client-OpenSSL-CTX.xml"
+	<xi:include href="Features/snippets/TLS-Client-OpenSSL-CTX.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
       <para>
@@ -441,7 +441,7 @@
       </para>
       <example id="ex-Defensive_Coding-TLS-Client-OpenSSL-Connect">
 	<title>Creating a client connection using OpenSSL</title>
-	<xi:include href="snippets/TLS-Client-OpenSSL-Connect.xml"
+	<xi:include href="Features/snippets/TLS-Client-OpenSSL-Connect.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
       <para>
@@ -454,7 +454,7 @@
       </para>
       <example id="ex-Defensive_Coding-TLS-OpenSSL-Connection-Use">
 	<title>Using an OpenSSL connection to send and receive data</title>
-	<xi:include href="snippets/TLS-Client-OpenSSL-Connection-Use.xml"
+	<xi:include href="Features/snippets/TLS-Client-OpenSSL-Connection-Use.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
       <para>
@@ -471,7 +471,7 @@
       </para>
       <example id="ex-Defensive_Coding-TLS-OpenSSL-Connection-Close">
 	<title>Closing an OpenSSL connection in an orderly fashion</title>
-	<xi:include href="snippets/TLS-OpenSSL-Connection-Close.xml"
+	<xi:include href="Features/snippets/TLS-OpenSSL-Connection-Close.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
       <para>
@@ -481,7 +481,7 @@
       </para>
       <example id="ex-Defensive_Coding-TLS-OpenSSL-Context-Close">
 	<title>Closing an OpenSSL connection in an orderly fashion</title>
-	<xi:include href="snippets/TLS-OpenSSL-Context-Close.xml"
+	<xi:include href="Features/snippets/TLS-OpenSSL-Context-Close.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
     </section>
@@ -497,7 +497,7 @@
 	The GNUTLS library needs explicit initialization:
       </para>
       <informalexample id="ex-Defensive_Coding-TLS-GNUTLS-Init">
-	<xi:include href="snippets/TLS-GNUTLS-Init.xml"
+	<xi:include href="Features/snippets/TLS-GNUTLS-Init.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </informalexample>
       <para>
@@ -514,7 +514,7 @@
       </para>
       <example id="ex-Defensive_Coding-TLS-Client-GNUTLS-Credentials">
 	<title>Initializing a GNUTLS credentials structure</title>
-	<xi:include href="snippets/TLS-Client-GNUTLS-Credentials.xml"
+	<xi:include href="Features/snippets/TLS-Client-GNUTLS-Credentials.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
       <para>
@@ -522,7 +522,7 @@
 	object should be freed:
       </para>
       <informalexample>
-	<xi:include href="snippets/TLS-GNUTLS-Credentials-Close.xml"
+	<xi:include href="Features/snippets/TLS-GNUTLS-Credentials-Close.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </informalexample>
       <para>
@@ -543,7 +543,7 @@
       </para>
       <example id="ex-Defensive_Coding-TLS-Client-GNUTLS-Connect">
 	<title>Establishing a TLS client connection using GNUTLS</title>
-	<xi:include href="snippets/TLS-Client-GNUTLS-Connect.xml"
+	<xi:include href="Features/snippets/TLS-Client-GNUTLS-Connect.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
       <para>
@@ -558,7 +558,7 @@
       </para>
       <example id="ex-Defensive_Coding-TLS-Client-GNUTLS-Verify">
 	<title>Verifying a server certificate using GNUTLS</title>
-	<xi:include href="snippets/TLS-Client-GNUTLS-Verify.xml"
+	<xi:include href="Features/snippets/TLS-Client-GNUTLS-Verify.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
       <para>
@@ -576,7 +576,7 @@
       <example id="ex-Defensive_Coding-TLS-Client-GNUTLS-Match">
 	<title>Matching the server host name and certificate in a
 	GNUTLS client</title>
-	<xi:include href="snippets/TLS-Client-GNUTLS-Match.xml"
+	<xi:include href="Features/snippets/TLS-Client-GNUTLS-Match.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
       <para>
@@ -591,7 +591,7 @@
       </para>
       <example id="ex-Defensive_Coding-TLS-GNUTLS-Use">
 	<title>Using a GNUTLS session</title>
-	<xi:include href="snippets/TLS-GNUTLS-Use.xml"
+	<xi:include href="Features/snippets/TLS-GNUTLS-Use.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
       <para>
@@ -603,7 +603,7 @@
       </para>
       <example id="ex-Defensive_Coding-TLS-GNUTLS-Disconnect">
 	<title>Using a GNUTLS session</title>
-	<xi:include href="snippets/TLS-GNUTLS-Disconnect.xml"
+	<xi:include href="Features/snippets/TLS-GNUTLS-Disconnect.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
     </section>
@@ -614,7 +614,7 @@
 	classes:
       </para>
       <informalexample>
-	<xi:include href="snippets/TLS-Client-OpenJDK-Import.xml"
+	<xi:include href="Features/snippets/TLS-Client-OpenJDK-Import.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </informalexample>
       <para>
@@ -644,7 +644,7 @@
       <example id="ex-Defensive_Coding-TLS-Client-OpenJDK-Context">
 	<title>Setting up an <literal>SSLContext</literal> for OpenJDK TLS
 	clients</title>
-	<xi:include href="snippets/TLS-Client-OpenJDK-Context.xml"
+	<xi:include href="Features/snippets/TLS-Client-OpenJDK-Context.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
       <para>
@@ -657,7 +657,7 @@
       <example id="ex-Defensive_Coding-TLS-OpenJDK-Parameters">
 	<title>Setting up <literal>SSLParameters</literal> for TLS use
 	with OpenJDK</title>
-	<xi:include href="snippets/TLS-OpenJDK-Parameters.xml"
+	<xi:include href="Features/snippets/TLS-OpenJDK-Parameters.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
       <para>
@@ -666,7 +666,7 @@
 	separately, and this is only supported by OpenJDK 7 and later:
       </para>
       <informalexample>
-	<xi:include href="snippets/TLS-Client-OpenJDK-Hostname.xml"
+	<xi:include href="Features/snippets/TLS-Client-OpenJDK-Hostname.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </informalexample>
       <para>
@@ -687,7 +687,7 @@
       </para>
       <example id="ex-Defensive_Coding-TLS-Client-OpenJDK-Connect">
 	<title>Establishing a TLS connection with OpenJDK</title>
-	<xi:include href="snippets/TLS-Client-OpenJDK-Connect.xml"
+	<xi:include href="Features/snippets/TLS-Client-OpenJDK-Connect.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
       <para>
@@ -704,7 +704,7 @@
       </para>
       <example id="ex-Defensive_Coding-TLS-Client-OpenJDK-Use">
 	<title>Using a TLS client socket in OpenJDK</title>
-	<xi:include href="snippets/TLS-Client-OpenJDK-Use.xml"
+	<xi:include href="Features/snippets/TLS-Client-OpenJDK-Use.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
       <section>
@@ -726,7 +726,7 @@
 	</para>
 	<example id="ex-Defensive_Coding-TLS-Client-MyTrustManager">
 	  <title>A customer trust manager for OpenJDK TLS clients</title>
-	  <xi:include href="snippets/TLS-Client-OpenJDK-MyTrustManager.xml"
+	  <xi:include href="Features/snippets/TLS-Client-OpenJDK-MyTrustManager.xml"
 		      xmlns:xi="http://www.w3.org/2001/XInclude"; />
 	</example>
 	<para>
@@ -737,7 +737,7 @@
 	</para>
 	<example id="ex-Defensive_Coding-TLS-Client-Context_For_Cert">
 	  <title>Using a custom TLS trust manager with OpenJDK</title>
-	  <xi:include href="snippets/TLS-Client-OpenJDK-Context_For_Cert.xml"
+	  <xi:include href="Features/snippets/TLS-Client-OpenJDK-Context_For_Cert.xml"
 		      xmlns:xi="http://www.w3.org/2001/XInclude"; />
 	</example>
 	<para>
@@ -782,7 +782,7 @@
       </para>
       <example id="ex-Defensive_Coding-TLS-NSS-Includes">
 	<title>Include files for NSS</title>
-	<xi:include href="snippets/TLS-NSS-Includes.xml"
+	<xi:include href="Features/snippets/TLS-NSS-Includes.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
       <para>
@@ -805,7 +805,7 @@
       </para>
       <example id="ex-Defensive_Coding-TLS-NSS-Init">
 	<title>Initializing the NSS library</title>
-	<xi:include href="snippets/TLS-NSS-Init.xml"
+	<xi:include href="Features/snippets/TLS-NSS-Init.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
       <para>
@@ -813,7 +813,7 @@
 	the following function calls:
       </para>
       <informalexample id="ex-Defensive_Coding-TLS-NSS-Close">
-	<xi:include href="snippets/TLS-NSS-Close.xml"
+	<xi:include href="Features/snippets/TLS-NSS-Close.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </informalexample>
       <para>
@@ -849,7 +849,7 @@
       </para>
       <example id="ex-Defensive_Coding-TLS-Client-NSS-Connect">
 	<title>Creating a TLS connection with NSS</title>
-	<xi:include href="snippets/TLS-Client-NSS-Connect.xml"
+	<xi:include href="Features/snippets/TLS-Client-NSS-Connect.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
       <para>
@@ -859,7 +859,7 @@
       </para>
       <example id="ex-Defensive_Coding-TLS-NSS-Use">
 	<title>Using NSS for sending and receiving data</title>
-	<xi:include href="snippets/TLS-NSS-Use.xml"
+	<xi:include href="Features/snippets/TLS-NSS-Use.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
       <para>
@@ -868,7 +868,7 @@
       </para>
       <example id="ex-Defensive_Coding-TLS-Client-NSS-Close">
 	<title>Closing NSS client connections</title>
-	<xi:include href="snippets/TLS-Client-NSS-Close.xml"
+	<xi:include href="Features/snippets/TLS-Client-NSS-Close.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
     </section>
@@ -905,7 +905,7 @@
       <example id="ex-Defensive_Coding-TLS-Client-Python-check_host_name">
 	<title>Implementing TLS host name checking Python (without
 	wildcard support)</title>
-	<xi:include href="snippets/TLS-Client-Python-check_host_name.xml"
+	<xi:include href="Features/snippets/TLS-Client-Python-check_host_name.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
       <para>
@@ -962,7 +962,7 @@
       </para>
       <example id="ex-Defensive_Coding-TLS-Client-Python-Connect">
 	<title>Establishing a TLS client connection with Python</title>
-	<xi:include href="snippets/TLS-Client-Python-Connect.xml"
+	<xi:include href="Features/snippets/TLS-Client-Python-Connect.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
       <para>
@@ -970,14 +970,14 @@
 	be used like a regular socket:
       </para>
       <informalexample>
-	<xi:include href="snippets/TLS-Python-Use.xml"
+	<xi:include href="Features/snippets/TLS-Python-Use.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </informalexample>
       <para>
 	Closing the TLS socket is straightforward as well:
       </para>
       <informalexample>
-	<xi:include href="snippets/TLS-Python-Close.xml"
+	<xi:include href="Features/snippets/TLS-Python-Close.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </informalexample>
     </section>
diff --git a/defensive-coding/en-US/Features/schemas.xml b/defensive-coding/en-US/Features/schemas.xml
deleted file mode 100644
index 8e84245..0000000
--- a/defensive-coding/en-US/Features/schemas.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0"?>
-<locatingRules xmlns="http://thaiopensource.com/ns/locating-rules/1.0";>
-  <include rules="../../schemas.xml"/>
-</locatingRules>
diff --git a/defensive-coding/en-US/Java/Language.xml b/defensive-coding/en-US/Java-Language.xml
similarity index 98%
rename from defensive-coding/en-US/Java/Language.xml
rename to defensive-coding/en-US/Java-Language.xml
index e47df99..eddf7f6 100644
--- a/defensive-coding/en-US/Java/Language.xml
+++ b/defensive-coding/en-US/Java-Language.xml
@@ -29,7 +29,7 @@
     </para>
     <example id="ex-Defensive_Coding-Java-Language-ReadArray">
       <title>Incrementally reading a byte array</title>
-      <xi:include href="snippets/Language-ReadArray.xml"
+      <xi:include href="Java/snippets/Language-ReadArray.xml"
 		  xmlns:xi="http://www.w3.org/2001/XInclude"; />
     </example>
     <para>
@@ -59,7 +59,7 @@
     <example id="ex-Defensive_Coding-Java-Language-Finally">
       <title>Resource management with a
       <literal>try</literal>-<literal>finally</literal> block</title>
-      <xi:include href="snippets/Finally.xml"
+      <xi:include href="Java/snippets/Finally.xml"
 		  xmlns:xi="http://www.w3.org/2001/XInclude"; />
     </example>
     <para>
@@ -81,7 +81,7 @@
     <example id="ex-Defensive_Coding-Java-Language-TryWithResource">
       <title>Resource management using the
       <literal>try</literal>-with-resource construct</title>
-      <xi:include href="snippets/TryWithResource.xml"
+      <xi:include href="Java/snippets/TryWithResource.xml"
 		  xmlns:xi="http://www.w3.org/2001/XInclude"; />
     </example>
     <para>
diff --git a/defensive-coding/en-US/Java/LowLevel.xml b/defensive-coding/en-US/Java-LowLevel.xml
similarity index 99%
rename from defensive-coding/en-US/Java/LowLevel.xml
rename to defensive-coding/en-US/Java-LowLevel.xml
index 18ba1ad..6bb1190 100644
--- a/defensive-coding/en-US/Java/LowLevel.xml
+++ b/defensive-coding/en-US/Java-LowLevel.xml
@@ -80,7 +80,7 @@
     </para>
     <example id="ex-Defensive_Coding-Java-JNI-Pointers">
       <title>Array length checking in JNI code</title>
-      <xi:include href="snippets/JNI-Pointers.xml"
+      <xi:include href="Java/snippets/JNI-Pointers.xml"
 		  xmlns:xi="http://www.w3.org/2001/XInclude"; />
     </example>
     <para>
diff --git a/defensive-coding/en-US/Java/SecurityManager.xml b/defensive-coding/en-US/Java-SecurityManager.xml
similarity index 97%
rename from defensive-coding/en-US/Java/SecurityManager.xml
rename to defensive-coding/en-US/Java-SecurityManager.xml
index 2e18ac7..20a4b60 100644
--- a/defensive-coding/en-US/Java/SecurityManager.xml
+++ b/defensive-coding/en-US/Java-SecurityManager.xml
@@ -126,7 +126,7 @@ grant {
     <example id="ex-Defensive_Coding-Java-SecurityManager-Unprivileged">
       <title>Using the security manager to run code with reduced
       privileges</title>
-      <xi:include href="snippets/SecurityManager-Unprivileged.xml"
+      <xi:include href="Java/snippets/SecurityManager-Unprivileged.xml"
 		  xmlns:xi="http://www.w3.org/2001/XInclude"; />
     </example>
     <para>
@@ -136,7 +136,7 @@ grant {
       on all files in the current directory) can be used:
     </para>
     <informalexample>
-      <xi:include href="snippets/SecurityManager-CurrentDirectory.xml"
+      <xi:include href="Java/snippets/SecurityManager-CurrentDirectory.xml"
 		  xmlns:xi="http://www.w3.org/2001/XInclude"; />
     </informalexample>
     <important>
@@ -234,7 +234,7 @@ grant {
     <example id="ex-Defensive_Coding-Java-SecurityManager-Privileged">
       <title>Using the security manager to run code with increased
       privileges</title>
-      <xi:include href="snippets/SecurityManager-Privileged.xml"
+      <xi:include href="Java/snippets/SecurityManager-Privileged.xml"
 		  xmlns:xi="http://www.w3.org/2001/XInclude"; />
     </example>
     <para>
@@ -283,7 +283,7 @@ grant {
     </para>
     <example id="ex-Defensive_Coding-Java-SecurityManager-Callback">
       <title>Restoring privileges when invoking callbacks</title>
-      <xi:include href="snippets/SecurityManager-Callback.xml"
+      <xi:include href="Java/snippets/SecurityManager-Callback.xml"
 		  xmlns:xi="http://www.w3.org/2001/XInclude"; />
     </example>
   </section>
diff --git a/defensive-coding/en-US/Java/Java.xml b/defensive-coding/en-US/Java.xml
similarity index 50%
rename from defensive-coding/en-US/Java/Java.xml
rename to defensive-coding/en-US/Java.xml
index d7bf3ef..3ff75c5 100644
--- a/defensive-coding/en-US/Java/Java.xml
+++ b/defensive-coding/en-US/Java.xml
@@ -4,8 +4,8 @@
 <chapter id="chap-Defensive_Coding-Java">
   <title>The Java Programming Language</title>
 
-  <xi:include href="Language.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
-  <xi:include href="LowLevel.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
-  <xi:include href="SecurityManager.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
+  <xi:include href="Java-Language.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
+  <xi:include href="Java-LowLevel.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
+  <xi:include href="Java-SecurityManager.xml" xmlns:xi="http://www.w3.org/2001/XInclude"; />
 </chapter>
 
diff --git a/defensive-coding/en-US/Java/schemas.xml b/defensive-coding/en-US/Java/schemas.xml
deleted file mode 100644
index b18bd04..0000000
--- a/defensive-coding/en-US/Java/schemas.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0"?>
-<locatingRules xmlns="http://thaiopensource.com/ns/locating-rules/1.0";>
-  <uri resource="Language.xml" uri="../../docbook-schema/docbook.rnc"/>
-  <uri resource="LowLevel.xml" uri="../../docbook-schema/docbook.rnc"/>
-</locatingRules>
diff --git a/defensive-coding/en-US/Python/Language.xml b/defensive-coding/en-US/Python.xml
similarity index 100%
rename from defensive-coding/en-US/Python/Language.xml
rename to defensive-coding/en-US/Python.xml
diff --git a/defensive-coding/en-US/Python/schemas.xml b/defensive-coding/en-US/Python/schemas.xml
deleted file mode 100644
index 8e84245..0000000
--- a/defensive-coding/en-US/Python/schemas.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0"?>
-<locatingRules xmlns="http://thaiopensource.com/ns/locating-rules/1.0";>
-  <include rules="../../schemas.xml"/>
-</locatingRules>
diff --git a/defensive-coding/en-US/Tasks/Cryptography.xml b/defensive-coding/en-US/Tasks-Cryptography.xml
similarity index 100%
rename from defensive-coding/en-US/Tasks/Cryptography.xml
rename to defensive-coding/en-US/Tasks-Cryptography.xml
diff --git a/defensive-coding/en-US/Tasks/Descriptors.xml b/defensive-coding/en-US/Tasks-Descriptors.xml
similarity index 100%
rename from defensive-coding/en-US/Tasks/Descriptors.xml
rename to defensive-coding/en-US/Tasks-Descriptors.xml
diff --git a/defensive-coding/en-US/Tasks/File_System.xml b/defensive-coding/en-US/Tasks-File_System.xml
similarity index 100%
rename from defensive-coding/en-US/Tasks/File_System.xml
rename to defensive-coding/en-US/Tasks-File_System.xml
diff --git a/defensive-coding/en-US/Tasks/Library_Design.xml b/defensive-coding/en-US/Tasks-Library_Design.xml
similarity index 100%
rename from defensive-coding/en-US/Tasks/Library_Design.xml
rename to defensive-coding/en-US/Tasks-Library_Design.xml
diff --git a/defensive-coding/en-US/Tasks/Locking.xml b/defensive-coding/en-US/Tasks-Locking.xml
similarity index 100%
rename from defensive-coding/en-US/Tasks/Locking.xml
rename to defensive-coding/en-US/Tasks-Locking.xml
diff --git a/defensive-coding/en-US/Tasks/Processes.xml b/defensive-coding/en-US/Tasks-Processes.xml
similarity index 100%
rename from defensive-coding/en-US/Tasks/Processes.xml
rename to defensive-coding/en-US/Tasks-Processes.xml
diff --git a/defensive-coding/en-US/Tasks/Serialization.xml b/defensive-coding/en-US/Tasks-Serialization.xml
similarity index 95%
rename from defensive-coding/en-US/Tasks/Serialization.xml
rename to defensive-coding/en-US/Tasks-Serialization.xml
index 792ea94..71cb67a 100644
--- a/defensive-coding/en-US/Tasks/Serialization.xml
+++ b/defensive-coding/en-US/Tasks-Serialization.xml
@@ -239,7 +239,7 @@
       </para>
       <example id="ex-Defensive_Coding-Tasks-Serialization-XML-Expat-EntityDeclHandler">
 	<title>Disabling XML entity processing with Expat</title>
-	<xi:include href="snippets/Serialization-XML-Expat-EntityDeclHandler.xml"
+	<xi:include href="Tasks/snippets/Serialization-XML-Expat-EntityDeclHandler.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
       <para>
@@ -249,7 +249,7 @@
       </para>
       <example id="ex-Defensive_Coding-Tasks-Serialization-XML-Expat-Create">
 	<title>Creating an Expat XML parser</title>
-	<xi:include href="snippets/Serialization-XML-Expat-Create.xml"
+	<xi:include href="Tasks/snippets/Serialization-XML-Expat-Create.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
       <para>
@@ -279,7 +279,7 @@
       </para>
       <example id="ex-Defensive_Coding-Tasks-Serialization-XML-Qt-NoEntityHandler">
 	<title>A QtXml entity handler which blocks entity processing</title>
-	<xi:include href="snippets/Serialization-XML-Qt-NoEntityHandler.xml"
+	<xi:include href="Tasks/snippets/Serialization-XML-Qt-NoEntityHandler.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
       <para>
@@ -295,7 +295,7 @@
       </para>
       <example id="ex-Defensive_Coding-Tasks-Serialization-XML-Qt-NoEntityReader">
 	<title>A QtXml XML reader which blocks entity processing</title>
-	<xi:include href="snippets/Serialization-XML-Qt-NoEntityReader.xml"
+	<xi:include href="Tasks/snippets/Serialization-XML-Qt-NoEntityReader.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
       <para>
@@ -311,7 +311,7 @@
       </para>
       <example id="ex-Defensive_Coding-Tasks-Serialization-XML-Qt-QDomDocument">
 	<title>Parsing an XML document with QDomDocument, without entity expansion</title>
-	<xi:include href="snippets/Serialization-XML-Qt-QDomDocument.xml"
+	<xi:include href="Tasks/snippets/Serialization-XML-Qt-QDomDocument.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
     </section>
@@ -340,13 +340,13 @@
       </para>
       <example id="ex-Defensive_Coding-Tasks-Serialization-XML-OpenJDK-NoEntityResolver">
 	<title>Helper class to prevent DTD external entity resolution in OpenJDK</title>
-	<xi:include href="snippets/Serialization-XML-OpenJDK-NoEntityResolver.xml"
+	<xi:include href="Tasks/snippets/Serialization-XML-OpenJDK-NoEntityResolver.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
       <example id="ex-Defensive_Coding-Tasks-Serialization-XML-OpenJDK-NoResourceResolver">
 	<title>Helper class to prevent schema resolution in
 	OpenJDK</title>
-	<xi:include href="snippets/Serialization-XML-OpenJDK-NoResourceResolver.xml"
+	<xi:include href="Tasks/snippets/Serialization-XML-OpenJDK-NoResourceResolver.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
       <para>
@@ -355,7 +355,7 @@
       </para>
       <example id="ex-Defensive_Coding-Tasks-Serialization-XML-OpenJDK-Imports">
 	<title>Java imports for OpenJDK XML parsing</title>
-	<xi:include href="snippets/Serialization-XML-OpenJDK-Imports.xml"
+	<xi:include href="Tasks/snippets/Serialization-XML-OpenJDK-Imports.xml"
 		    xmlns:xi="http://www.w3.org/2001/XInclude"; />
       </example>
       <section id="sect-Defensive_Coding-Tasks-Serialization-XML-OpenJDK_Parse-DOM">
@@ -369,7 +369,7 @@
 	</para>
 	<example id="ex-Defensive_Coding-Tasks-Serialization-XML-OpenJDK_Parse-DOM">
 	  <title>DOM-based XML parsing in OpenJDK</title>
-	  <xi:include href="snippets/Serialization-XML-OpenJDK_Parse-DOM.xml"
+	  <xi:include href="Tasks/snippets/Serialization-XML-OpenJDK_Parse-DOM.xml"
 		      xmlns:xi="http://www.w3.org/2001/XInclude"; />
 	</example>
 	<para>
@@ -400,7 +400,7 @@
 	<example id="ex-Defensive_Coding-Tasks-Serialization-XML-OpenJDK_Parse-XMLSchema_SAX">
 	  <title>SAX-based validation against an XML schema in
 	  OpenJDK</title>
-	  <xi:include href="snippets/Serialization-XML-OpenJDK_Parse-XMLSchema_SAX.xml"
+	  <xi:include href="Tasks/snippets/Serialization-XML-OpenJDK_Parse-XMLSchema_SAX.xml"
 		      xmlns:xi="http://www.w3.org/2001/XInclude"; />
 	</example>
 	<para>
@@ -421,7 +421,7 @@
 	<example id="ex-Defensive_Coding-Tasks-Serialization-XML-OpenJDK_Parse-XMLSchema_DOM">
 	  <title>Validation of a DOM document against an XML schema in
 	  OpenJDK</title>
-	  <xi:include href="snippets/Serialization-XML-OpenJDK_Parse-XMLSchema_DOM.xml"
+	  <xi:include href="Tasks/snippets/Serialization-XML-OpenJDK_Parse-XMLSchema_DOM.xml"
 		      xmlns:xi="http://www.w3.org/2001/XInclude"; />
 	</example>
       </section>
diff --git a/defensive-coding/en-US/Tasks/Temporary_Files.xml b/defensive-coding/en-US/Tasks-Temporary_Files.xml
similarity index 100%
rename from defensive-coding/en-US/Tasks/Temporary_Files.xml
rename to defensive-coding/en-US/Tasks-Temporary_Files.xml
diff --git a/defensive-coding/en-US/Tasks/schemas.xml b/defensive-coding/en-US/Tasks/schemas.xml
deleted file mode 100644
index 8e84245..0000000
--- a/defensive-coding/en-US/Tasks/schemas.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0"?>
-<locatingRules xmlns="http://thaiopensource.com/ns/locating-rules/1.0";>
-  <include rules="../../schemas.xml"/>
-</locatingRules>
diff --git a/defensive-coding/en-US/C/schemas.xml b/defensive-coding/en-US/schemas.xml
similarity index 74%
rename from defensive-coding/en-US/C/schemas.xml
rename to defensive-coding/en-US/schemas.xml
index 8e84245..28b4476 100644
--- a/defensive-coding/en-US/C/schemas.xml
+++ b/defensive-coding/en-US/schemas.xml
@@ -1,4 +1,4 @@
 <?xml version="1.0"?>
 <locatingRules xmlns="http://thaiopensource.com/ns/locating-rules/1.0";>
-  <include rules="../../schemas.xml"/>
+  <include rules="../schemas.xml"/>
 </locatingRules>

--
security mailing list
security@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/security





[Index of Archives]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Coolkey]

  Powered by Linux