Skip to content

Commit c97a32e

Browse files
committed
Initial work on CONNECT proxy.
Cannot currently connect to the proxy over TLS (though, once connected, it can connect to the actual site over TLS). No support for authentication.
1 parent 8a005bc commit c97a32e

File tree

3 files changed

+291
-80
lines changed

3 files changed

+291
-80
lines changed

src/app.zig

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@ const Allocator = std.mem.Allocator;
33

44
const log = @import("log.zig");
55
const Loop = @import("runtime/loop.zig").Loop;
6-
const HttpClient = @import("http/client.zig").Client;
6+
const http = @import("http/client.zig");
7+
78
const Telemetry = @import("telemetry/telemetry.zig").Telemetry;
89
const Notification = @import("notification.zig").Notification;
910

@@ -14,7 +15,7 @@ pub const App = struct {
1415
config: Config,
1516
allocator: Allocator,
1617
telemetry: Telemetry,
17-
http_client: HttpClient,
18+
http_client: http.Client,
1819
app_dir_path: ?[]const u8,
1920
notification: *Notification,
2021

@@ -29,6 +30,7 @@ pub const App = struct {
2930
run_mode: RunMode,
3031
tls_verify_host: bool = true,
3132
http_proxy: ?std.Uri = null,
33+
proxy_type: ?http.ProxyType = null,
3234
};
3335

3436
pub fn init(allocator: Allocator, config: Config) !*App {
@@ -52,9 +54,10 @@ pub const App = struct {
5254
.telemetry = undefined,
5355
.app_dir_path = app_dir_path,
5456
.notification = notification,
55-
.http_client = try HttpClient.init(allocator, .{
57+
.http_client = try http.Client.init(allocator, .{
5658
.max_concurrent = 3,
5759
.http_proxy = config.http_proxy,
60+
.proxy_type = config.proxy_type,
5861
.tls_verify_host = config.tls_verify_host,
5962
}),
6063
.config = config,

0 commit comments

Comments
 (0)