From 67428fbe03098743b6128f42d2cb5e9d08b7ccb3 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Sun, 25 Sep 2022 17:31:21 +0100 Subject: [PATCH] packaging: wip Signed-off-by: Ian Jackson --- Makefile | 7 +- PROTOCOL => PROTOCOL.txt | 0 README.config | 158 --------------------------------------- debian/.gitignore | 5 +- debian/rules | 3 + 5 files changed, 11 insertions(+), 162 deletions(-) rename PROTOCOL => PROTOCOL.txt (100%) delete mode 100644 README.config diff --git a/Makefile b/Makefile index d5511e1..ceae377 100644 --- a/Makefile +++ b/Makefile @@ -63,11 +63,14 @@ docs/html/index.html: docs/conf.py $(wildcard docs/*.md docs/*.rst docs/*.png) rm -rf docs/html $(SPHINXBUILD) -M html docs docs $(SPHINXOPTS) +doch=/usr/share/doc/hippotat/ + install: all - $(INSTALL) -d $(DESTDIR)/usr/{bin,sbin,share/doc/hippotat} + $(INSTALL) -d $(DESTDIR)/usr/{bin,sbin} $(DESTDIR)$(doch) $(INSTALL) -m 755 $(TARGET_RELEASE_DIR)/hippotat $(DESTDIR)/usr/bin/. $(INSTALL) -m 755 $(TARGET_RELEASE_DIR)/hippotatd $(DESTDIR)/usr/sbin/. - cp -r docs/html $(DESTDIR)/usr/share/doc/hippotat/ + cp -r docs/html $(DESTDIR)$(doch) + $(INSTALL) -m 644 PROTOCOL.txt $(DESTDIR)$(doch)/ clean: rm -rf stamp/* doc/html diff --git a/PROTOCOL b/PROTOCOL.txt similarity index 100% rename from PROTOCOL rename to PROTOCOL.txt diff --git a/README.config b/README.config deleted file mode 100644 index 842573c..0000000 --- a/README.config +++ /dev/null @@ -1,158 +0,0 @@ --*- Fundamental -*- - -Sections - - [ - ] - [] - [] often [SERVER] - [COMMON] - -Keys are looked up in that order, unless otherwise specified. - is the client's virtual address. - must be a valid DNS hostname and not look like an address. - -Exceptional settings: - - server - Specifies . - Is looked up in [SERVER] and [COMMON] only. - If not specified there, it is SERVER. - - Used by server to select the appropriate parts of the - rest of the configuration. Ignored by the client. - - secret - Looked up in the usual way, but used by client and server to - determine which possible peerings to try to set up, and which to - ignore. - - We define the sets of putative clients and servers, as follows: - all those, for which there is any section (even an empty one) - whose name is based on or (as applicable). - (LIMIT sections do not count.) - - The server queue packets for, and accept requests from, each - putative client for which the config search yields a secret. - - Each client will create a local interface, and try to communicate - with the server, for each possible pair (putative server, - putative client) for which the config search yields a secret. - - ipif - Command to run to create and communicate with local network - interface. Passed to sh -c. Must speak SLIP on stdin/stdout. - The following additional interpolations aare substituted: - %(local)s %(peer)s %(rnet)s %(ifname)s - on server - on client - ["userv root ipif %(local)s,%(peer)s,%(mtu)s,slip %(rnets)s"] - - On server: applies to all clients; not looked up in - client-specific sections. - On client: may be different for different servers. - -Capped settings: - - Values in [ LIMIT] and [LIMIT] are a cap (maximum) on - those from the other sections (including COMMON). - - max_batch_down - Size limit for response payloads (used by server only) - [65536 bytes; LIMIT: 262144 bytes] - - max_queue_time - Discard packets after they have been queued this long waiting - for http. - On server: setting applies to downward packets, and is capped - by LIMIT values. - On client: setting applies to upward packets, and is - not affected by LIMIT values. - [10 s; LIMIT: 121 s] - - http_timeout - On server: return with empty payload any http request oustanding - for this long - On client: give up on any http request outstanding for - for this long plus http_timeout_grace - Client's effective timeout must be at least server's (checked). - [30 s; LIMIT: 121] - - target_requests_outstanding - On server: whenever number of outstanding requests for - a client exceeds this, return oldest with empty payload - On client: try to keep this many requests outstanding. - Must match between client and server (checked). - [3; LIMIT: 10] - -Ordinary settings, used by both, not client-specific: - - These are not looked up in the client-specific config sections. - - addrs - Public IP (v4 or v6) address(es) of the server; - space-separated. - On server: mandatory; used for bind. No default. - On client: used only to construct default url. - - vnetwork - Private network range (/). Must contain all - s. Must contain and , and used - to compute their defaults. [172.24.230.192/28] - - vaddr - Address of server's virtual interface. - - vrelay - Virtual point-to-point address used for tunnel routing - (does not appear in packets). - [first host entry in other than , - so 172.24.230.194] - - port - Public port number of the server. [80] - On server: used for bind. - On client: used only to construct default url. - - mtu - Must match exactly. (UNCHECKED) [1500 bytes] - - ifname_server - Virtual interface name on the server. [shippo%d] - ifname_client - Virtual interface name on the client. [hippo%d] - Any %d is interpolated (by the kernel). - -Ordinary settings, used by server only: - - max_clock_skew - Permissible clock skew between client and server. - hippotat will not work if clock skew is more than this. - Conversely: when moving client from one public network to - another, the first network can deny service to the client for - this period after the client leaves the first network. - [300s] - -Ordinary settings, used by client only: - - http_timeout_grace - See http_timeout. [5 s] - - max_requests_outstanding - Client will hold off sending more requests than this to - server even if it has data to send. [6] - - max_batch_up - Size limit for request payloads. [4000 bytes] - - http_retry - If a request fails, wait this long before considering it - "finished" - to limit rate of futile requests. [5 s] - - url - Public url of server. - [http://:/] - - vroutes - Virtual addresses (in CIDR syntax) to be found at the server - end, space-separated. Routes to those will be created on - the client. [""] diff --git a/debian/.gitignore b/debian/.gitignore index 5090c6f..12a005c 100644 --- a/debian/.gitignore +++ b/debian/.gitignore @@ -1,10 +1,11 @@ .debhelper debhelper-*-stamp +*.debhelper.log files tmp hippotat-client hippotat-client.substvars hippotat-server hippotat-server.substvars -hippotat-doc -hippotat-doc.substvars +hippotat-common +hippotat-common.substvars diff --git a/debian/rules b/debian/rules index 2d33f6a..f474f1f 100755 --- a/debian/rules +++ b/debian/rules @@ -2,3 +2,6 @@ %: dh $@ + +override_dh_installinit: + dh_installinit --name=hippotatd -- 2.30.2