mark: A photo of Mark kneeling on top of the Taal Volcano in the Philippines. It was a long hike. (Default)
Mark Smith ([staff profile] mark) wrote in [site community profile] changelog2009-04-10 08:41 am

[dw-free] Purchase SSL certificate

[commit: http://hg.dwscoalition.org/dw-free/rev/6cc447870adb]

http://bugs.dwscoalition.org/show_bug.cgi?id=122

Add SSL hook. Basically, you define a header, if that header is set to 1,
then we turn on SSL mode. This assumes you use an SSL unwrapping engine like
pound/stunnel/perlbal capable of inserting headers and don't feed SSL
directly to Apache.

Patch by [staff profile] mark.

Files modified:
  • cgi-bin/DW/Hooks/SSL.pm
--------------------------------------------------------------------------------
diff -r 53dd152590d8 -r 6cc447870adb cgi-bin/DW/Hooks/SSL.pm
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cgi-bin/DW/Hooks/SSL.pm	Fri Apr 10 08:41:35 2009 +0000
@@ -0,0 +1,28 @@
+#
+# Use this hook to turn on SSL mode if a certain header is present.  See the
+# SSL documentation for more information on usage.
+#
+# Authors:
+#      Mark Smith <mark@dreamwidth.org>
+#
+# Copyright (c) 2009 by Dreamwidth Studios, LLC.
+#
+# This program is free software; you may redistribute it and/or modify it under
+# the same terms as Perl itself.  For a copy of the license, please reference
+# 'perldoc perlartistic' or 'perldoc perlgpl'.
+#
+
+package DW::Hooks::SSL;
+
+use strict;
+
+LJ::register_hook( 'ssl_check', sub {
+    my $r = $_[0]->{r}
+        or return 0;
+
+    return 1 if $LJ::SSL_HEADER &&
+                $r->headers_in->{$LJ::SSL_HEADER} == 1;
+    return 0;
+} );
+
+1;
--------------------------------------------------------------------------------

Post a comment in response:

This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

If you are unable to use this captcha for any reason, please contact us by email at support@dreamwidth.org