Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
N
nghttp2
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Libraries
nghttp2
Commits
ba63d00d
Commit
ba63d00d
authored
Sep 10, 2012
by
Tatsuhiro Tsujikawa
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Update README.rst
parent
ca415a2a
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
24 additions
and
47 deletions
+24
-47
README.rst
README.rst
+24
-47
No files found.
README.rst
View file @
ba63d00d
...
@@ -96,13 +96,13 @@ http://spdylay.sourceforge.net/. All public APIs are in
...
@@ -96,13 +96,13 @@ http://spdylay.sourceforge.net/. All public APIs are in
*spdylay/spdylay.h*. All public API functions as well as the callback
*spdylay/spdylay.h*. All public API functions as well as the callback
function typedefs are documented.
function typedefs are documented.
Example
s
SPDY Client/Server Program
s
--------
--------
-------------------
*examples* directory contains SPDY client and server implementation
The *src* directory contains SPDY client and server implementations
using Spdylay
. These programs are intended to make sure that Spdylay
using Spdylay
library. These programs are intended to make sure that
API is acutally usable for real implementation and also for debugging
Spdylay API is acutally usable for real implementation and also for
purposes. Please note that OpenSSL with `NPN
debugging
purposes. Please note that OpenSSL with `NPN
<http://technotes.googlecode.com/git/nextprotoneg.html>`_ support is
<http://technotes.googlecode.com/git/nextprotoneg.html>`_ support is
required in order to build and run these programs. At the time of
required in order to build and run these programs. At the time of
this writing, the OpenSSL 1.0.1 supports NPN.
this writing, the OpenSSL 1.0.1 supports NPN.
...
@@ -114,7 +114,7 @@ The SPDY client is called ``spdycat``. It is a dead simple downloader
...
@@ -114,7 +114,7 @@ The SPDY client is called ``spdycat``. It is a dead simple downloader
like wget/curl. It connects to SPDY server and gets resources given in
like wget/curl. It connects to SPDY server and gets resources given in
the command-line::
the command-line::
$
examples
/spdycat -h
$
src
/spdycat -h
Usage: spdycat [-Oansv23] [-t <SECONDS>] [-w <WINDOW_BITS>] [--cert=<CERT>]
Usage: spdycat [-Oansv23] [-t <SECONDS>] [-w <WINDOW_BITS>] [--cert=<CERT>]
[--key=<KEY>] <URI>...
[--key=<KEY>] <URI>...
...
@@ -141,7 +141,7 @@ the command-line::
...
@@ -141,7 +141,7 @@ the command-line::
The file must be in PEM format.
The file must be in PEM format.
--key=<KEY> Use the client private key file. The file
--key=<KEY> Use the client private key file. The file
must be in PEM format.
must be in PEM format.
$
examples
/spdycat -nv https://www.google.com/
$
src
/spdycat -nv https://www.google.com/
[ 0.025] NPN select next protocol: the remote server offers:
[ 0.025] NPN select next protocol: the remote server offers:
* spdy/3
* spdy/3
* spdy/2
* spdy/2
...
@@ -181,10 +181,10 @@ Spdyd - SPDY server
...
@@ -181,10 +181,10 @@ Spdyd - SPDY server
SPDY server is called ``spdyd`` and serves static files. It is single
SPDY server is called ``spdyd`` and serves static files. It is single
threaded and multiplexes connections using non-blocking socket. The
threaded and multiplexes connections using non-blocking socket. The
static files are read using blocking I/O system call,
read(2)
. It
static files are read using blocking I/O system call,
``read(2)``
. It
speaks SPDY/2 and SPDY/3::
speaks SPDY/2 and SPDY/3::
$
examples
/spdyd --htdocs=/your/htdocs/ -v 3000 server.key server.crt
$
src
/spdyd --htdocs=/your/htdocs/ -v 3000 server.key server.crt
IPv4: listen on port 3000
IPv4: listen on port 3000
IPv6: listen on port 3000
IPv6: listen on port 3000
The negotiated next protocol: spdy/3
The negotiated next protocol: spdy/3
...
@@ -230,7 +230,7 @@ file ``shrpx.conf.sample``.
...
@@ -230,7 +230,7 @@ file ``shrpx.conf.sample``.
Here is the command-line options::
Here is the command-line options::
$
examples
/shrpx -h
$
src
/shrpx -h
Usage: shrpx [-Dhs] [-b <HOST,PORT>] [-f <HOST,PORT>] [-n <CORES>]
Usage: shrpx [-Dhs] [-b <HOST,PORT>] [-f <HOST,PORT>] [-n <CORES>]
[-c <NUM>] [-L <LEVEL>] [OPTIONS...]
[-c <NUM>] [-L <LEVEL>] [OPTIONS...]
<PRIVATE_KEY> <CERT>
<PRIVATE_KEY> <CERT>
...
@@ -297,6 +297,8 @@ Here is the command-line options::
...
@@ -297,6 +297,8 @@ Here is the command-line options::
Default: daemon
Default: daemon
--backlog=<NUM> Set listen backlog size.
--backlog=<NUM> Set listen backlog size.
Default: 256
Default: 256
--ciphers=<SUITE> Set allowed cipher list. The format of the
string is described in OpenSSL ciphers(1).
-h, --help Print this help.
-h, --help Print this help.
...
@@ -305,13 +307,13 @@ For those of you who are curious, ``shrpx`` is an abbreviation of
...
@@ -305,13 +307,13 @@ For those of you who are curious, ``shrpx`` is an abbreviation of
Without ``-s`` option, it works in the following configuration::
Without ``-s`` option, it works in the following configuration::
client <-- SPDY, HTTPS --> Shrpx <-- HTTP
--> Web Server
Client <-- (SPDY, HTTPS) --> Shrpx <-- (HTTP)
--> Web Server
With ``-s`` option, it works in the following configuration::
With ``-s`` option, it works in the following configuration::
client <-- SPDY, HTTPS --> Shrpx <-- HTTP --> Proxy server
(e.g., Squid)
Client <-- (SPDY, HTTPS) --> Shrpx <-- (HTTP) --> Proxy
(e.g., Squid)
*
c
lient is configured to use Shrpx as SSL/SPDY proxy.
*
C
lient is configured to use Shrpx as SSL/SPDY proxy.
At the time of this writing, Chrome is the only browser which supports
At the time of this writing, Chrome is the only browser which supports
SSL/SPDY proxy. The one way to configure Chrome to use SSL/SPDY proxy
SSL/SPDY proxy. The one way to configure Chrome to use SSL/SPDY proxy
...
@@ -330,39 +332,14 @@ Then run chrome with the following arguments::
...
@@ -330,39 +332,14 @@ Then run chrome with the following arguments::
$ google-chrome --proxy-pac-url=file:///path/to/proxy.pac --use-npn
$ google-chrome --proxy-pac-url=file:///path/to/proxy.pac --use-npn
Other examples
Examples
++++++++++++++
--------
There is another SPDY server called ``spdynative``, which is
`node.native <https://github.com/d5/node.native>`_ style simple SPDY
server::
#include <iostream>
#include "spdy.h"
int main()
{
spdy server;
if(!server.listen("localhost", 8080, "server.key", "server.crt",
[](request& req, response& res) {
res.set_status(200);
res.set_header("content-type", "text/plain");
res.end("C++ FTW\n");
}))
return EXIT_FAILURE;
std::cout << "Server running at http://localhost:8080/" << std::endl;
return reactor::run(server);
}
Don't expect much from ``spdynative``. It is just an example and does
not support asynchronous I/O at all.
If you are looking for the example program written in C, see
The *examples* directory contains a simple SPDY client implementation
``spdycli`` which is the simple SPDY client
.
in C
.
Python
w
rapper
Python
-Spdylay - Python W
rapper
--------------
--------------
-----------------
See ``python`` directory.
The library comes with Python wrapper ``python-spdylay``. See
``python`` directory.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment