{
    "content": [
        {
            "type": "text",
            "text": "# Net::SSL (perldoc)\n\n## NAME\n\nNet::SSL - support for Secure Sockets Layer\n\n## Sections\n\n- **NAME**\n- **METHODS**\n- **DIAGNOSTICS**\n\nUse structuredContent.sections for detailed options, examples, and full documentation.\n"
        }
    ],
    "structuredContent": {
        "command": "Net::SSL",
        "section": "",
        "mode": "perldoc",
        "summary": "Net::SSL - support for Secure Sockets Layer",
        "synopsis": null,
        "tldr_summary": null,
        "tldr_examples": [],
        "tldr_source": null,
        "flags": [],
        "examples": [],
        "see_also": [],
        "section_outline": [
            {
                "name": "NAME",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "METHODS",
                "lines": 95,
                "subsections": []
            },
            {
                "name": "DIAGNOSTICS",
                "lines": 22,
                "subsections": []
            }
        ],
        "sections": {
            "NAME": {
                "content": "Net::SSL - support for Secure Sockets Layer\n",
                "subsections": []
            },
            "METHODS": {
                "content": "new Creates a new \"Net::SSL\" object.\n\nconfigure\nConfigures a \"Net::SSL\" socket for operation.\n\nconfigurecerts\nSets up a certificate file to use for communicating with on the socket.\n\nconnect\ndiewitherror\ngetcipher\ngetlwpobject\nWalks up the caller stack and looks for something blessed into the \"LWP::UserAgent\"\nnamespace and returns it. Vaguely deprecated.\n\ngetpeercertificate\nGets the peer certificate from the underlying \"Crypt::SSLeay::Conn\" object.\n\ngetpeerverify\ngetsharedciphers\ngetchunk\nAttempts to read up to 32KiB of data from the socket. Returns \"undef\" if nothing was read,\notherwise returns the data as a scalar.\n\npending\nProvides access to OpenSSL's \"pending\" attribute on the SSL connection object.\n\ngetline\nReads one character at a time until a newline is encountered, and returns the line,\nincluding the newline. Grossly inefficient.\n\nprint\nConcatenates the input parameters and writes them to the socket. Does not honour $, nor $/.\nReturns the number of bytes written.\n\nprintf\nPerforms a \"sprintf\" of the input parameters (thus, the first parameter must be the format),\nand writes the result to the socket. Returns the number of bytes written.\n\nproxy\nReturns the hostname of an https proxy server, as specified by the \"HTTPSPROXY\" environment\nvariable.\n\nproxyconnecthelper\nHelps set up a connection through a proxy.\n\nread\nPerforms a read on the socket and returns the result.\n\nsslcontext\nsysread\nIs an alias of \"read\".\n\ntimeout\nReturns the timeout value of the socket as defined by the implementing class or 60 seconds\nby default.\n\nblocking\nReturns a boolean indicating whether the underlying socket is in blocking mode. By default,\nNet::SSL sockets are in blocking mode.\n\n$sock->blocking(0); # set to non-blocking mode\n\nThis method simply calls the underlying \"blocking\" method of the IO::Socket object.\n\nwrite\nWrites the parameters passed in (thus, a list) to the socket. Returns the number of bytes\nwritten.\n\nsyswrite\nIs an alias of \"write\".\n\naccept\nNot yet implemented. Will die if called.\n\ngetc\nNot yet implemented. Will die if called.\n\ngetlines\nNot yet implemented. Will die if called.\n\nungetc\nNot yet implemented. Will die if called.\n\nsenduseragenttoproxy\nBy default (as of version 2.80 of \"Net::SSL\" in the 0.54 distribution of Crypt::SSLeay), the\nuser agent string is no longer sent to the proxy (but will continue to be sent to the remote\nhost).\n\nThe previous behaviour was of marginal benefit, and could cause fatal errors in certain\nscenarios (see CPAN bug #4759) and so no longer happens by default.\n\nTo reinstate the old behaviour, call \"Net::SSL::senduseragenttoproxy\" with a true value\n(usually 1).\n",
                "subsections": []
            },
            "DIAGNOSTICS": {
                "content": "\"no port given for proxy server <proxy>\"\n\nA proxy was specified for configuring a socket, but no port number was given. Ensure that the\nproxy is specified as a host:port pair, such as \"proxy.example.com:8086\".\n\n\"configure certs failed: <contents of $@>; <contents of $!>\"\n\n\"proxy connect failed: <contents of $@>; <contents of $!>\"\n\n\"Connect failed: <contents of $@>; <contents of $!>\"\n\nDuring connect().\n\nSEE ALSO\nIO::Socket::INET\n\"Net::SSL\" is implemented by subclassing \"IO::Socket::INET\", hence methods not specifically\noverridden are defined by that package.\n\nNet::SSLeay\nA package that provides a Perl-level interface to the \"openssl\" secure sockets layer\nlibrary.\n",
                "subsections": []
            }
        }
    }
}