This patch contains the differences between the upstream tarball and
the sources actually used for building the package.

Option single-debian-patch is used as the changes are tracked in git.


--- pushpin-1.35.0.orig/Cargo.toml
+++ pushpin-1.35.0/Cargo.toml
@@ -11,16 +11,16 @@ panic = "abort"
 panic = "abort"
 
 [dependencies]
-base64 = "0.12"
+base64 = ">=0.12.0, <0.14.0"
 clap = { version = "2.33", features = ["wrap_help"] }
 libc = "0.2"
 log = "0.4"
-rustls = "0.19"
-rustls-native-certs = "0.5"
+#rustls = "0.18"
+#rustls-native-certs = "0.5"
 serde = { version = "1.0", features = ["derive"] }
 serde_json = "1.0"
 slab = "0.4"
-webpki = "0.21"
+#webpki = "0.21"
 zmq = "0.9"
 
 [lib]
--- pushpin-1.35.0.orig/examples/config/pushpin.conf
+++ pushpin-1.35.0/examples/config/pushpin.conf
@@ -16,7 +16,7 @@ stats_connection_ttl=120
 
 [runner]
 # services to start
-services=condure,zurl,pushpin-proxy,pushpin-handler
+services=condure,pushpin-proxy,pushpin-handler
 
 # plain HTTP port to listen on for client connections
 http_port=7999
@@ -100,7 +100,11 @@ sockjs_url=http://cdn.jsdelivr.net/sockj
 # pushpin will output a log message when a new version is available. report
 # mode helps the pushpin project build credibility, so please enable it if you
 # enjoy this software :)
-updates_check=report
+#
+# NOTE: Upstream enables this feature by default. The debian package
+# disables it for privacy reasons. please consider to enable it by setting
+# updates_check to 'report'.
+updates_check=off
 
 # use this field to identify your organization in updates requests. if left
 # blank, updates requests will be anonymous
--- /dev/null
+++ pushpin-1.35.0/header.AGPL
@@ -0,0 +1,19 @@
+ *
+ * Pushpin is free software: you can redistribute it and/or modify it under
+ * the terms of the GNU Affero General Public License as published by the Free
+ * Software Foundation, either version 3 of the License, or (at your option)
+ * any later version.
+ *
+ * Pushpin is distributed in the hope that it will be useful, but WITHOUT ANY
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+ * FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ * Alternatively, Pushpin may be used under the terms of a commercial license,
+ * where the commercial license agreement is provided with the software or
+ * contained in a written agreement between you and Fanout. For further
+ * information use the contact form at <https://fanout.io/enterprise/>.
+ *
--- pushpin-1.35.0.orig/src/proxy/app.cpp
+++ pushpin-1.35.0/src/proxy/app.cpp
@@ -311,7 +311,7 @@ public:
 		QByteArray sigKey = parse_key(settings.value("proxy/sig_key").toString());
 		QByteArray upstreamKey = parse_key(settings.value("proxy/upstream_key").toString());
 		QString sockJsUrl = settings.value("proxy/sockjs_url").toString();
-		QString updatesCheck = settings.value("proxy/updates_check").toString();
+		QString updatesCheck = settings.value("proxy/updates_check","off").toString();
 		QString organizationName = settings.value("proxy/organization_name").toString();
 		int clientMaxconn = settings.value("runner/client_maxconn", 50000).toInt();
 		int statsConnectionTtl = settings.value("global/stats_connection_ttl", 120).toInt();
--- pushpin-1.35.0.orig/src/publish_cli.rs
+++ pushpin-1.35.0/src/publish_cli.rs
@@ -34,7 +34,7 @@ use std::io;
 use std::io::{BufRead, Read, Write};
 use std::net;
 use std::str;
-use std::sync::Arc;
+//use std::sync::Arc;
 
 enum TnValue {
     Null,
@@ -236,11 +236,15 @@ fn parse_url(url: &str) -> Result<Parsed
     })
 }
 
+trait DummyStream: Read + Write {}
+
 struct TlsStream {
-    stream: rustls::StreamOwned<rustls::ClientSession, net::TcpStream>,
+    //stream: rustls::StreamOwned<rustls::ClientSession, net::TcpStream>,
+    stream: Box<dyn DummyStream>,
 }
 
 impl TlsStream {
+    /*
     fn new(stream: net::TcpStream, host: &str) -> Result<Self, Box<dyn Error>> {
         let mut config = rustls::ClientConfig::new();
 
@@ -260,6 +264,11 @@ impl TlsStream {
             stream: rustls::StreamOwned::new(client, stream),
         })
     }
+    */
+
+    fn new(_stream: net::TcpStream, _host: &str) -> Result<Self, Box<dyn Error>> {
+        Err("TLS is not yet supported in the debian version of pushpin-publish".into())
+    }
 }
 
 impl Read for TlsStream {
--- pushpin-1.35.0.orig/src/pushpin/internal.conf
+++ pushpin-1.35.0/src/pushpin/internal.conf
@@ -18,13 +18,13 @@ m2a_in_stream_specs=ipc://{rundir}/{ipc_
 m2a_out_specs=ipc://{rundir}/{ipc_prefix}m2zhttp-in,ipc://{rundir}/{ipc_prefix}m2zws-in
 
 # list of connect PUSH for sending zurl HTTP/WS requests
-zurl_out_specs=ipc://{rundir}/{ipc_prefix}zurl-in
+zurl_out_specs=ipc:///var/run/zurl/zurl-in
 
 # list of connect ROUTER for continuing zurl HTTP/WS requests
-zurl_out_stream_specs=ipc://{rundir}/{ipc_prefix}zurl-in-stream
+zurl_out_stream_specs=ipc:///var/run/zurl/zurl-in-stream
 
 # list of connect SUB for receiving zurl HTTP/WS responses
-zurl_in_specs=ipc://{rundir}/{ipc_prefix}zurl-out
+zurl_in_specs=ipc:///var/run/zurl/zurl-out
 
 # bind DEALER for requesting inspection info (internal, used with handler)
 handler_inspect_spec=ipc://{rundir}/{ipc_prefix}inspect
