This file is indexed.

/usr/share/doc/libghc-hsopenssl-doc/html/OpenSSL.html is in libghc-hsopenssl-doc 0.11.4.11-1build1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>OpenSSL</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script src="file:///usr/share/javascript/mathjax/MathJax.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
window.onload = function () {pageLoad();setSynopsis("mini_OpenSSL.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/OpenSSL.html">Source</a></li><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">HsOpenSSL-0.11.4.11: Partial OpenSSL binding for Haskell</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>None</td></tr><tr><th>Language</th><td>Haskell2010</td></tr></table><p class="caption">OpenSSL</p></div><div id="description"><p class="caption">Description</p><div class="doc"><p>HsOpenSSL is an OpenSSL binding for Haskell. It can generate RSA
 and DSA keys, read and write PEM files, generate message digests,
 sign and verify messages, encrypt and decrypt messages.</p><p>Please note that this project has started at the time when there
 were no pure-Haskell implementations of TLS. Now there is tls
 package (<a href="http://hackage.haskell.org/package/tls">http://hackage.haskell.org/package/tls</a>), which looks
 pretty saner than HsOpenSSL especially for initialisation and error
 handlings. So PHO (the initial author of HsOpenSSL) wants to
 encourage you to use and improve the tls package instead as long as
 possible. The only problem is that the tls package has not received
 as much review as OpenSSL from cryptography specialists yet, thus
 we can't assume it's secure enough.</p><p>Features that aren't (yet) supported:</p><dl><dt><em>SSL network connection</em></dt><dd>ssl(3) functionalities aren't fully
   covered yet. See <a href="OpenSSL-Session.html">OpenSSL.Session</a>.</dd><dt><em>Complete coverage of Low-level API to symmetric ciphers</em></dt><dd>Only
   high-level APIs (EVP and BIO) are fully available. But I believe
   no one will be lost without functions like <code>DES_set_odd_parity</code>.</dd><dt><em>Low-level API to asymmetric ciphers</em></dt><dd>Only a high-level API
   (EVP) is available. But I believe no one will complain about the
   absence of functions like <code>RSA_public_encrypt</code>.</dd><dt><em>X.509 v3 extension handling</em></dt><dd>It should be supported in the
   future.</dd><dt><em>Low-level API to message digest functions</em></dt><dd>Just use EVP
   instead of something like <code>MD5_Update</code>.</dd><dt><em>API to PKCS#12 functionality</em></dt><dd>It should be covered someday.</dd><dt><em>BIO</em></dt><dd>BIO isn't needed because we are Haskell hackers. Though
   HsOpenSSL itself uses BIO internally.</dd><dt><em>ENGINE cryptographic module</em></dt><dd>The default implementations work
   very well, don't they?</dd></dl></div></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><a href="#v:withOpenSSL">withOpenSSL</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> a</li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><a id="v:withOpenSSL" class="def">withOpenSSL</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> a -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.1.0/System-IO.html#t:IO">IO</a> a <a href="src/OpenSSL.html#withOpenSSL" class="link">Source</a> <a href="#v:withOpenSSL" class="selflink">#</a></p><div class="doc"><p>Computation of <code><code><a href="OpenSSL.html#v:withOpenSSL">withOpenSSL</a></code> action</code> initializes the OpenSSL
 library as necessary, and computes <code>action</code>. Every application that
 uses HsOpenSSL must wrap any operations involving OpenSSL with
 <code><a href="OpenSSL.html#v:withOpenSSL">withOpenSSL</a></code>, or they might crash:</p><pre>module Main where
import OpenSSL

main :: IO ()
main = withOpenSSL $
       do ...</pre><p>Since 0.10.3.5, <code><a href="OpenSSL.html#v:withOpenSSL">withOpenSSL</a></code> is safe to be applied
 redundantly. Library authors may wish to wrap their functions not
 to force their users to think about initialization:</p><pre>get :: URI -&gt; IO Response
get uri = withOpenSSL $ internalImplementationOfGet uri</pre></div></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.17.3</p></div></body></html>