+++ /dev/null
-##
-## openssl.wml -- WML Template for the www.openssl.org website
-## Written by Ralf S. Engelschall <rse@engelschall.com>
-##
-## Usage: #use wml::openssl area=<area_name> [page=<page_name>]
-##
-
-#use wml::std::tags
-#use wml::std::info
-#use wml::des::navbar
-#use wml::des::space
-
-##
-## The Global Page Layout
-##
-
-# start of page header
-[PAGE_HEAD:\
-<html>
-<head>
-
-# insert information about the webpage
-<info style=comment domainname="openssl.org"
- copyright="1998-2014 The OpenSSL Project, http://www.openssl.org/">
-<info style=meta domainname="openssl.org"
- copyright="1998-2014 The OpenSSL Project, http://www.openssl.org/">
-
-# insert overideable title container
-<title*>OpenSSL: {#PAGE_TITLE#}</title*>
-# predefine it to show errors
-..PAGE_TITLE!>>Error: Undefined Title !!<<..
-# define override tag
-<define-tag title endtag=required>
-..PAGE_TITLE>>%body<<..
-</define-tag>
-
-# define a style-sheet for adjusting some HTML layouting things
-# to conform to some typographically stronger conventions.
-<style type="text/css"><!--
-BODY { position: absolute; left: 0px; top: 0px; background: #666699; }
-A { text-decoration: none; font-weight: bold; }
-A:link { text-decoration: none; font-weight: bold; color: #666699; }
-A:visited { text-decoration: none; font-weight: bold; color: #666699; }
-A:hover { text-decoration: none; font-weight: bold; color: #666699; text-decoration: underline; }
-\#red { color: #cc3333; }
-\#sf { font-family: arial,helvetica; font-variant: normal; font-style: normal; }
-\#sfl { font-weight: bold; font-family: arial,helvetica; font-size: 16pt; \
- line-height: 16pt; font-variant: normal; font-style: normal; }
-H1 { font-weight: bold; font-size: 18pt; line-height: 18pt; \
- font-family: arial,helvetica; font-variant: normal; font-style: normal; }
-H2 { font-weight: bold; font-size: 14pt; line-height: 14pt; \
- font-family: arial,helvetica; font-variant: normal; font-style: normal; }
-H3 { font-weight: bold; font-size: 12pt; line-height: 12pt; \
- font-family: arial,helvetica; font-variant: normal; font-style: normal; }
---></style>
-
-# end of header and start of physical body
-# (use additionally use colors here for older browsers)
-</head>
-<body link="#6666cc" alink="#6666cc" vlink="#6666cc" bgcolor="#666699" text="#000000"
- marginheight=0 leftmargin=0 rightmargin=0 topmargin=0>
-
-# now define the page layout by a nested table
-# structure consisting of a 5x5 cell grid.
-<table width=100% cellspacing=0 cellpadding=0 border=0>
- # visually: the top line of the page
- <tr>\
- <td align=left width=100 bgcolor="#666699"><img src="$(IMG)/page-head-tl.jpg" alt="OpenSSL"></td>\
- <td align=left colspan=2 width=600 bgcolor="#666699"><img src="$(IMG)/page-head-tm.jpg" alt=""></td>\
- <td align=right width=20 bgcolor="#666699"> </td>\
- <td align=right width=50 bgcolor="#666699"> </td>\
- </tr>
- # visually: the top of the white body with the subnavbar
- <tr>\
- <td align=left width=100><img src="$(IMG)/page-head-bl.jpg"></td>\
- <td align=left width=20><img src="$(IMG)/page-head-bm.jpg"></td>\
- <td align=left width=100% bgcolor="#ffffff">\
- {#PAGE_SUBNAVBAR#}\
- </td>\
- <td align=right width=20><img src="$(IMG)/page-corner-tr.gif"></td>\
- <td align=right width=50 bgcolor="#666699"> </td>\
- </tr>
- # visually: the left main navigation bar and the white body
- <tr>\
- <td align=left valign=top width=100 bgcolor="#666699">{#PAGE_NAVBAR#}</td>\
- <td align=left valign=top width=20 bgcolor="#ffffff"> </td>\
- <td align=left valign=top bgcolor="#ffffff">\
- <br>
- :PAGE_HEAD][PAGE_BODY:
- {#PAGE_BODY#}
- :PAGE_BODY][PAGE_FOOT:\
- </td>\
- <td align=right width=20 bgcolor="#ffffff"> </td>\
- <td align=right width=50 bgcolor="#666699"> </td>\
- </tr>
- # visually: the bottom of the white body
- <tr>\
- <td align=left valign=top width=100 bgcolor="#666699"> </td>\
- <td align=left width=20><img src="$(IMG)/page-corner-bl.gif"></td>\
- <td align=left valign=top bgcolor="#ffffff"> </td>\
- <td align=right width=20><img src="$(IMG)/page-corner-br.gif"></td>\
- <td align=right width=50 bgcolor="#666699"> </td>\
- </tr>
- # visually: the bottom of the page (only for esthetical
- # reasons, i.e. the page doesn't end with the white body)
- <tr>\
- <td colspan=5 bgcolor="#666699"> </td>\
- </tr>
-</table>
-
-# the physical end of the body
-</body>
-</html>
-:PAGE_FOOT]
-
-##
-## The main Navigation Bar [left, vertically]
-##
-
-# define the navigation bar through a grammar
-<navbar:define name=navbar imgstar="n:s:s"
- imgbase="$(IMG)" urlbase="$(ROOT)">
- # bar header
- <navbar:header>
- </navbar:header>
- # button prolog
- <navbar:prolog>
- <tr><td>
- </navbar:prolog>
- # the buttons itself
- <navbar:button id=title url="." txt="Home" img=page-navbar-ti-*.jpg>
- <navbar:button id=source url=source/ txt="Download" img=page-navbar-so-*.jpg>
- <navbar:button id=about url=about/ txt="About" img=page-navbar-ab-*.jpg>
- <navbar:button id=news url=news/ txt="News" img=page-navbar-ne-*.jpg>
- <navbar:button id=FAQ url=support/faq.html txt="FAQ" img=page-navbar-fq-*.jpg>
- <navbar:button id=docs url=docs/ txt="Documents" img=page-navbar-do-*.jpg>
- <navbar:button id=support url=support/ txt="Support" img=page-navbar-su-*.jpg>
- # button epilog
- <navbar:epilog>
- </td></tr>
- </navbar:epilog>
- # bar footer
- <navbar:footer>
- </navbar:footer>
-</navbar:define>
-
-# and then immediately render it into its layout location
-# (Hint: The top and buttom images have to be part of the table
-# structure because only this way we can put them 0pt to the
-# buttons without a gap)
-..PAGE_NAVBAR>>\
- <table cellspacing=0 cellpadding=0 border=0>\
- <tr><td><img src="$(IMG)/page-navbar-top.jpg"></td></tr>
- # render it!
- <navbar:render name=navbar select=$(area) $(page:+subselected)>
- <tr><td><img src="$(IMG)/page-navbar-bot.jpg"><br><p></td></tr>
- </table>
-<<..
-
-##
-## The Sub Navigation Bar (SNB) [top, horizontally]
-##
-
-# define the <snb>...</snb> container tag
-<define-tag snb endtag=required>
- # 1. define the navigation bar through a grammar
- <navbar:define name=snb urlbase="$(SNB_ROOT)"
- txtcol_normal="#666666" txtcol_select="#000000">
- # bar header
- <navbar:header>\
- <table cellspacing=0 cellpadding=0 border=0>
- <tr>
- </navbar:header>
- # button prolog (normal)
- <navbar:prolog>\
- <td><font face="Arial,Helvetica">
- </navbar:prolog>
- # button prolog (selected)
- <navbar:prolog type=S>\
- <td bgcolor="#f0f0f0"> <font face="Arial,Helvetica"><b>
- </navbar:prolog>
- # ...here the <snb_button> tags will occur...
- %body
- # button epilog (normal)
- <navbar:epilog>\
- </font> </td><td>|</td>
- </navbar:epilog>
- # button epilog (selected)
- <navbar:epilog type=S>\
- </b></font> </td><td>|</td>
- </navbar:epilog>
- # last button epilog (normal)
- <navbar:epilog pos=last>\
- </font> </td><td></td>
- </navbar:epilog>
- # last button epilog (selected)
- <navbar:epilog type=S pos=last>\
- </b></font> </td><td></td>
- </navbar:epilog>
- # bar footer
- <navbar:footer>\
- </tr>
- </table>
- </navbar:footer>
- </navbar:define>
- # 2. render the navigation bar and divert
- # divert it into it's final location
- ..PAGE_SUBNAVBAR>>\
- <navbar:render name=snb select="$(page)">\
- <<..
-</define-tag>
-
-# define the <snb_button> tag for the <snb> container
-# (this is for consistency with the tag names)
-<define-tag snb_button>
- <navbar:button %attributes>
-</define-tag>
-
-# predefine the contents of the SNB location
-# by diverting a whitespace character to it.
-# This prevents the table to be folded.
-..PAGE_SUBNAVBAR!>>
-
-<<..
-
-# and now the final WML trick: When the page=<page_name>
-# attribute is specified for this template, we read in the SNB
-# spec-file which now can use the <snb>..</snb> and
-# <snb_button> tags to actually define and render a SNB. This
-# is accomplished by doing some sort of a conditional #include. ;-)
-$(page:*# )$(page:+#include ")$(SNB_RC:-.wmlsnb)$(page:+")
-
-##
-## Useful tags (for convenience purposes only)
-##
-
-# define a <item> tag for <ul>/<ol> item similar to <li> but
-# which is nice for URL lists like the Related area where
-# we want a special layout.
-<define-tag item>
-<preserve name>
-<preserve url>
-<preserve aio>
-<preserve info>
-<set-var aio=*>
-<set-var %attributes>
-<li><imgdot width=1 height=18>\
- <a href="<get-var url>"><font size=+1 face="Arial,Helvetica"><b><get-var name></b></font></a>
- <ifeq "<get-var aio>" "" <img src="aio.gif" alt="[all-in-one]" align=absmiddle>>
- <br>
- <a href="<get-var url>"><font size=-1><get-var url></font></a><br>
- <ifeq "<get-var info>" "" "" "<get-var info>">
-<restore info>
-<restore aio>
-<restore url>
-<restore name>
-</define-tag>
-
-# define a <filelist> tag which can be used to create a file listing which
-# is optically more compact than the stuff Apache's mod_autoindex creates.
-# Especially the current version is marked red, too.
-<define-tag filelist>
-<pre>
-<b> Bytes Timestamp Filename</b>
-<b>________ ____________________ ____________________________</b>
-<:
-@HI = ();
-open(FP, "<index.current");
-while (<FP>) {
- s|\s*\n$||;
- push(@HI, $_);
-}
-close(FP);
-sub ls {
- my ($pat) = @_;
- my (@F, @R, $f, @S, @T);
- @F = sort { (stat($a))[9] <=> (stat($b))[9]; } (glob($pat));
- @R = ();
- foreach $f (@F) {
- next if ($f =~ m|^index.*|);
- if ('%1' ne '') {
- if (! %1 $f) {
- next;
- }
- }
- @S = stat($f);
- $f = "$f/" if (-d $f);
- @T = localtime($S[9]);
- my @moy = ('Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',
- 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec');
- push(@R, sprintf("%"."8d %"."s %"."2d %"."02d:%"."02d:%"."02d %"."d %"."s\n",
- $S[7], $moy[$T[4]], $T[3], $T[2], $T[1], $T[0], 1900+$T[5], $f));
- }
- return @R;
-}
-@L = &ls("%0");
-foreach $l (@L) {
- next if ($l =~ m|^\s*$|);
- $l =~ s|(\s+)(\S+[^/])(\s*\n)$|$1."<a href=\"$2\">$2</a>".$3|e;
- $l =~ s|(\s+)(\S+/)(\s*\n)$|$1."<a href=\"$2\"><b>$2</b></a>".$3|e;
- foreach $hi (@HI) {
- $l =~ s|^(.*$hi.*)$|<font color="#cc3333">$1 <b>[LATEST]</b></font>|;
- $l =~ s|>($hi)<|><font color="#cc3333">$1</font><|;
- }
- print $l;
-}
-:>
-</pre>
-</define-tag>
-
-<define-tag rfilelist>
-<pre>
-<b> Bytes Timestamp Filename</b>
-<b>________ ____________________ ____________________________</b>
-<:
-@HI = ();
-open(FP, "<index.current");
-while (<FP>) {
- s|\s*\n$||;
- push(@HI, $_);
-}
-close(FP);
-sub ls {
- my ($pat) = @_;
- my (@F, @R, $f, @S, @T);
- @F = sort { (stat($b))[9] <=> (stat($a))[9]; } (glob($pat));
- @R = ();
- foreach $f (@F) {
- next if ($f =~ m|^index.*|);
- if ('%1' ne '') {
- if (! %1 $f) {
- next;
- }
- }
- @S = stat($f);
- $f = "$f/" if (-d $f);
- @T = localtime($S[9]);
- my @moy = ('Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',
- 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec');
- push(@R, sprintf("%"."8d %"."s %"."2d %"."02d:%"."02d:%"."02d %"."d %"."s\n",
- $S[7], $moy[$T[4]], $T[3], $T[2], $T[1], $T[0], 1900+$T[5], $f));
- }
- return @R;
-}
-@L = &ls("%0");
-foreach $l (@L) {
- next if ($l =~ m|^\s*$|);
- if ($l =~ m|(\s+)(\S+[^/])(\s*\n)$|) {
- my $h = $`.$1;
- my $f = $2;
- my $t = $3;
- my $r = "<a href=\"$f\">$f</a>";
- if (-f "$f.md5") { $r .= " (<a href=\"$f.md5\">MD5</a>)"; }
- if (-f "$f.sha1") { $r .= " (<a href=\"$f.sha1\">SHA1</a>)"; }
- if (-f "$f.asc") { $r .= " (<a href=\"$f.asc\">PGP sign</a>)"; }
- $l = $h.$r.$t;
- }
- $l =~ s|(\s+)(\S+/)(\s*\n)$|$1."<a href=\"$2\"><b>$2</b></a>".$3|e;
- foreach $hi (@HI) {
- $l =~ s|^(.*$hi.*)$|<font color="#cc3333">$1 <b>[LATEST]</b></font>|;
- $l =~ s|>($hi)<|><font color="#cc3333">$1</font><|;
- }
- print $l;
-}
-:>
-</pre>
-</define-tag>
-
-#
-<define-tag newsflash>
-<preserve from>
-<preserve max>
-<preserve more>
-<set-var %attributes>
-<table width=500 cellspacing=0 cellpadding=1 border=0>
-<tr><td><font face="Arial,Helvetica"><b>Date</b></font></td> <td> <font face="Arial,Helvetica"><b>Newsflash</b></font></td></tr>
-<tr><td><hr noshade size=1></td> <td><hr noshade size=1></td></tr>
-<:
- open(FP, "< <get-var from>") || die;
- my $max = ("<get-var max>" eq '' ? 9999 : "<get-var max>");
- @COL = (
- '#ffffff',
- '#f0f0f0',
- );
- $ncol = 1;
- $n = 0;
- while (<FP>) {
- $ncol = ($ncol + 1) % 2;
- $col = $COL[$ncol];
- s|="ROOT|="$(ROOT)|g;
- if (m|^(.+?):(.+)|) {
- print "<tr bgcolor=\"$col\">\n";
- print " <td align=right><font face=\"Arial,Helvetica\"><b>$1:</b></font></td> <td> $2</td>\n";
- print "</tr>\n";
- }
- $n++;
- last if ($n >= $max);
- }
- close(FP);
-:>
-<ifeq "<get-var more>" "" "" <group
-<tr>
- <td> </td> <td align=right><a href="<get-var more>">more...</a></td>
-</tr>
->>
-</table>
-<restore more>
-<restore max>
-<restore from>
-</define-tag>
-
-# define a <disclaimer> tag which displays the usual disclaimer stuff
-<define-tag disclaimer>
-<font face="Arial,Helvetica" size=-1>
-This software package uses strong cryptography, so even if it is created,
-maintained and distributed from liberal countries in Europe (where it is legal
-to do this), it falls under certain export/import and/or use restrictions in
-some other parts of the world.
-<p>
-PLEASE REMEMBER THAT EXPORT/IMPORT AND/OR USE OF STRONG CRYPTOGRAPHY
-SOFTWARE, PROVIDING CRYPTOGRAPHY HOOKS OR EVEN JUST COMMUNICATING TECHNICAL
-DETAILS ABOUT CRYPTOGRAPHY SOFTWARE IS ILLEGAL IN SOME PARTS OF THE WORLD.
-SO, WHEN YOU IMPORT THIS PACKAGE TO YOUR COUNTRY, RE-DISTRIBUTE IT FROM
-THERE OR EVEN JUST EMAIL TECHNICAL SUGGESTIONS OR EVEN SOURCE PATCHES TO THE
-AUTHOR OR OTHER PEOPLE YOU ARE STRONGLY ADVISED TO PAY CLOSE ATTENTION TO
-ANY EXPORT/IMPORT AND/OR USE LAWS WHICH APPLY TO YOU. THE AUTHORS OF OPENSSL
-ARE NOT LIABLE FOR ANY VIOLATIONS YOU MAKE HERE. SO BE CAREFUL, IT
-IS YOUR RESPONSIBILITY.
-</font>
-<p>
-<font face="Arial,Helvetica" size=-1>
-CREDIT INFORMATION:
-This product includes cryptographic software written by Eric Young.
-This product includes software written by Tim Hudson (tjh@cryptsoft.com).
-</font>
-</define-tag>
-
-# a tag displaying the used tools
-<define-tag website-tools>
-<font face="Arial,Helvetica" size=-1>
-Website designed by
-<a href="http://www.engelschall.com/">Ralf S. Engelschall</a>
-and generated with
-<a href="http://thewml.org/"><font color="#000000">
-Website META Language</font></a> (WML).<br>
-All markup code and graphics on this website
-are Copyright © 1999-2014 <a href="http://www.openssl.org/">The OpenSSL Project</a>,
-All rights reserved.<br>
-This website is served by an
-<a href="http://www.apache.org/"><font color="#000000">Apache</font></a>
-webserver environment.<br>
-</font>
-</define-tag>
-
-# construct an absolute URL out of a relative URL
-# (essential for the mirroring of the website!)
-<define-tag absolute>
-<:{
- my ($cwd, $baseurl, $basedir, $subdir, $page, $url);
-
- # determine current working directory
- $cwd = '<get-var WML_SRC_DIRNAME>';
-
- # determine base URL
- $baseurl = '<get-var BASE_URL>' || 'file://';
-
- # determine base directory
- $basedir = '<get-var BASE_DIR>' || '<get-var WML_SRC_DIRNAME>';
- $basedir = &canonpath("$cwd/$basedir") if ($basedir !~ m|^/|);
-
- # determine subdir from base dir to current working dir
- $subdir = &relpath($basedir, $cwd);
-
- # determine document
- $page = '%0';
-
- # construct final URL
- $url = "$baseurl/$subdir/$page";
- $url = &canonurl($url);
-
- # replace this tag with the constructed URL
- print $url;
-}:>
-</define-tag>
-
-##
-## Finally, the layout is now rendered, so divert all
-## following stuff (the code in the local file after the #use
-## for this template!) into the white body area.
-##
-
-..PAGE_BODY>>
-