Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unix socket implementation #621

Merged
merged 2 commits into from Jan 20, 2024
Merged

Unix socket implementation #621

merged 2 commits into from Jan 20, 2024

Conversation

LaurenceJJones
Copy link
Contributor

@LaurenceJJones LaurenceJJones commented Jan 15, 2024

Fixes #237

Tested http and https unix sockets both work, (Even thought ssl unix sockets dont make much sense 🤷🏻 )

Nginx work fine with both

Pushing early PR since we have to work on cli tool to interact with sockets, Feel free to comment look forward to hearing from you.

@LaurenceJJones LaurenceJJones requested a review from a team as a code owner January 15, 2024 22:36
@LaurenceJJones
Copy link
Contributor Author

LaurenceJJones commented Jan 16, 2024

Just because I was curious if SSL over unix sockets actually did anything here are the results

TLDR: Yes

sudo curl --unix-socket /var/run/test.sock https://localhost/ -vvv -k
*   Trying /var/run/test.sock:0...
* Connected to localhost (/var/run/test.sock) port 443
* ALPN: curl offers h2,http/1.1
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
* TLSv1.3 (IN), TLS handshake, Server hello (2):
* TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
* TLSv1.3 (IN), TLS handshake, Certificate (11):
* TLSv1.3 (IN), TLS handshake, CERT verify (15):
* TLSv1.3 (IN), TLS handshake, Finished (20):
* TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
* TLSv1.3 (OUT), TLS handshake, Finished (20):
* SSL connection using TLSv1.3 / TLS_AES_128_GCM_SHA256 / X25519 / RSASSA-PSS
* ALPN: server accepted h2
* Server certificate:
*  subject: C=UK; ST=Some-State; O=Internet Widgits Pty Ltd
*  start date: Jan 15 22:20:52 2024 GMT
*  expire date: Jan 14 22:20:52 2025 GMT
*  issuer: C=UK; ST=Some-State; O=Internet Widgits Pty Ltd
*  SSL certificate verify result: self-signed certificate (18), continuing anyway.
*   Certificate level 0: Public key type RSA (2048/112 Bits/secBits), signed using sha256WithRSAEncryption
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
* using HTTP/2
* [HTTP/2] [1] OPENED stream for https://localhost/
* [HTTP/2] [1] [:method: GET]
* [HTTP/2] [1] [:scheme: https]
* [HTTP/2] [1] [:authority: localhost]
* [HTTP/2] [1] [:path: /]
* [HTTP/2] [1] [user-agent: curl/8.5.0]
* [HTTP/2] [1] [accept: */*]
> GET / HTTP/2
> Host: localhost
> User-Agent: curl/8.5.0
> Accept: */*
>
< HTTP/2 200
< content-type: text/html
< content-length: 3923
< date: Tue, 16 Jan 2024 07:42:16 GMT
<
<!doctype html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name="theme-color" content="#3f51b5"><link rel="manifest" href="./manifest.json"><title>Gotify</title><link rel="apple-touch-icon-precomposed" sizes="57x57" href="static/apple-touch-icon-57x57.png"/><link rel="apple-touch-icon-precomposed" sizes="114x114" href="static/apple-touch-icon-114x114.png"/><link rel="apple-touch-icon-precomposed" sizes="72x72" href="static/apple-touch-icon-72x72.png"/><link rel="apple-touch-icon-precomposed" sizes="144x144" href="static/apple-touch-icon-144x144.png"/><link rel="apple-touch-icon-precomposed" sizes="60x60" href="static/apple-touch-icon-60x60.png"/><link rel="apple-touch-icon-precomposed" sizes="120x120" href="static/apple-touch-icon-120x120.png"/><link rel="apple-touch-icon-precomposed" sizes="76x76" href="static/apple-touch-icon-76x76.png"/><link rel="apple-touch-icon-precomposed" sizes="152x152" href="static/apple-touch-icon-152x152.png"/><link rel="icon" type="image/png" href="static/favicon-196x196.png" sizes="196x196"/><link rel="icon" type="image/png" href="static/favicon-96x96.png" sizes="96x96"/><link rel="icon" type="image/png" href="static/favicon-32x32.png" sizes="32x32"/><link rel="icon" type="image/png" href="static/favicon-16x16.png" sizes="16x16"/><link rel="icon" type="image/png" href="static/favicon-128.png" sizes="128x128"/><link rel="icon" href="static/favicon.ico"><meta name="application-name" content="Gotify"/><meta name="msapplication-TileColor" content="#FFFFFF"/><meta name="msapplication-TileImage" content="static/mstile-144x144.png"/><meta name="msapplication-square70x70logo" content="static/mstile-70x70.png"/><meta name="msapplication-square150x150logo" content="static/mstile-150x150.png"/><meta name="msapplication-wide310x150logo" content="static/mstile-310x150.png"/><meta name="msapplication-square310x310logo" content="static/mstile-310x310.png"/><link href="./static/css/2.0f3898ba.chunk.css" rel="stylesheet"></head><body><noscript>Gotify requires JavaScript.</noscript><div id="root"></div><script>window.config = {"register":false,"version":{"version":"unknown","commit":"unknown","buildDate":"unknown"}};</script><script>!function(e){function t(t){for(var n,i,f=t[0],l=t[1],a=t[2],c=0,s=[];c<f.length;c++)i=f[c],Object.prototype.hasOwnProperty.call(o,i)&&o[i]&&s.push(o[i][0]),o[i]=0;for(n in l)Object.prototype.hasOwnProperty.call(l,n)&&(e[n]=l[n]);for(p&&p(t);s.length;)s.shift()();return u.push.apply(u,a||[]),r()}function r(){for(var e,t=0;t<u.length;t++){for(var r=u[t],n=!0,f=1;f<r.length;f++){var l=r[f];0!==o[l]&&(n=!1)}n&&(u.splice(t--,1),e=i(i.s=r[0]))}return e}var n={},o={1:0},u=[];function i(t){if(n[t])return n[t].exports;var r=n[t]={i:t,l:!1,exports:{}};return e[t].call(r.exports,r,r.exports,i),r.l=!0,r.exports}i.m=e,i.c=n,i.d=function(e,t,r){i.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},i.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toSt* Connection #0 to host localhost left intact
ringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.t=function(e,t){if(1&t&&(e=i(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(i.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)i.d(r,n,function(t){return e[t]}.bind(null,n));return r},i.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(t,"a",t),t},i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.p="./";var f=this["webpackJsonpgotify-ui"]=this["webpackJsonpgotify-ui"]||[],l=f.push.bind(f);f.push=t,f=f.slice();for(var a=0;a<f.length;a++)t(f[a]);var p=l;r()}([])</script><script src="./static/js/2.f78cef81.chunk.js"></script><script src="./static/js/main.b292f66c.chunk.js"></script></body></html>⏎                                                                                                

Does it actually encrypt the data passed through we can MITM with socat

sudo mv /var/run/test.sock /var/run/test.o.sock
sudo socat -t100 -x -v UNIX-LISTEN:/var/run/test.sock,mode=777,reuseaddr,fork UNIX-CONNECT:/var/run/test.o.sock
> 2024/01/16 07:46:35.000748884  length=517 from=0 to=516
16 03 01 02 00 01 00 01 fc 03 03 f3 59 73 9f 33  ............Ys.3
f1 13 79 e3 05 76 60 a7 70 c8 18 92 2e 11 19 a5  ..y..v`.p.......
7e bc 5d 03 69 87 77 e5 06 db 73 20 d8 d0 8b 55  ~.].i.w...s ...U
1c 2f 97 ad 14 39 25 ae bd 4b be 52 bb 5b 99 3c  ./...9%..K.R.[.<
e4 a0 f3 4a 65 de c8 76 76 4e e9 c4 00 3e 13 02  ...Je..vvN...>..
13 03 13 01 c0 2c c0 30 00 9f cc a9 cc a8 cc aa  .....,.0........
c0 2b c0 2f 00 9e c0 24 c0 28 00 6b c0 23 c0 27  .+./...$.(.k.#.'
00 67 c0 0a                                      .g..
c0 14 00 39 c0 09 c0 13 00 33 00 9d 00 9c 00 3d  ...9.....3.....=
00 3c 00 35 00 2f 00 ff 01 00 01 75 00 00 00 0e  .<.5./.....u....
00 0c 00 00 09 6c 6f 63 61 6c 68 6f 73 74 00 0b  .....localhost..
00 04 03 00 01 02 00 0a                          ........
00 16 00 14 00 1d 00 17 00 1e 00 19 00 18 01 00  ................
01 01 01 02 01 03 01 04 00 10 00 0e 00 0c 02 68  ...............h
32 08 68 74 74 70 2f 31 2e 31 00 16 00 00 00 17  2.http/1.1......
00 00 00 31 00 00 00 0d 00 30 00 2e 04 03 05 03  ...1.....0......
06 03 08 07 08 08 08 1a 08 1b 08 1c 08 09 08 0a  ................
08 0b 08 04 08 05 08 06 04 01 05 01 06 01 03 03  ................
03 01 03 02 04 02 05 02 06 02 00 2b 00 05 04 03  ...........+....
04 03 03 00 2d 00 02 01 01 00 33 00 26 00 24 00  ....-.....3.&.$.
1d 00 20 d8 de 59 9e a1 8d 13 7f db bd 03 e9 c4  .. ..Y..........
a6 dc f5 0e 72 0a                                ....r.
4a 5c 7f e3 86 30 e3 4e db c7 bb 44 7d 00 15 00  J\...0.N...D}...
b2 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
00 00 00                                         ...
--
< 2024/01/16 07:46:35.000750665  length=1572 from=0 to=1571
16 03 03 00 7a 02 00 00 76 03 03 3b 17 f3 0d 58  ....z...v..;...X
93 77 0c e1 14 f0 61 be d6 16 6e fd c0 be a3 a1  .w....a...n.....
76 87 6d 4e 47 e6 f8 e6 44 69 13 20 d8 d0 8b 55  v.mNG...Di. ...U
1c 2f 97 ad 14 39 25 ae bd 4b be 52 bb 5b 99 3c  ./...9%..K.R.[.<
e4 a0 f3 4a 65 de c8 76 76 4e e9 c4 13 01 00 00  ...Je..vvN......
2e 00 2b 00 02 03 04 00 33 00 24 00 1d 00 20 dd  ..+.....3.$... .
f7 bc 38 50 0b 2f 8b b4 f5 67 3c f4 5c a4 be a0  ..8P./...g<.\...
85 f0 7d 77 36 8a 18 0c ff 30 69 e6 47 9f 58 14  ..}w6....0i.G.X.
03 03 00 01 01 17 03 03 00 20 7b 42 37 5a 0b fa  ......... {B7Z..
5c c7 18 c9 3a e9 d6 8e 9e 32 df 0c 63 e4 0f fd  \...:....2..c...
02 82 a2 eb 4d cc 09 7d 23 4c 17 03 03 03 8d 2a  ....M..}#L.....*
b8 97 6c 6e a8 5a c9 79 c8 73 5d fb 77 b8 e1 4b  ..ln.Z.y.s].w..K
dc 38 3a ad fb 25 a1 20 64 c8 c0 1d ac 8c 46 49  .8:..%. d.....FI
30 54 2f 19 13 f4 85 55 ad 0e d6 64 14 65 89 39  0T/....U...d.e.9
ae a2 32 7d 04 0b b7 85 fa 95 d4 e4 ed 3e f6 72  ..2}.........>.r
94 b5 a7 f1 8f 61 22 2e 70 f7 4e b9 7a a7 71 d4  .....a".p.N.z.q.
65 5b 11 89 6e 99 05 5c 9d 14 2a 04 51 f4 7c e9  e[..n..\..*.Q.|.
1e d4 a7 52 70 0e f4 3e 40 c5 68 78 35 91 73 89  ...Rp..>@.hx5.s.
24 c9 7e 3a ce 37 2c 3c bd 07 7b 88 4c f5 49 e0  $.~:.7,<..{.L.I.
1e 93 25 8f f3 9b 95 57 f9 21 d1 90 a1 55 ac a9  ..%....W.!...U..
ce 9b 40 c9 09 f3 67 e2 d4 82 ae fa 8d 2f f7 30  ..@...g....../.0
63 04 f9 4a dd 0f a2 64 d2 cf d3 20 e5 83 28 53  c..J...d... ..(S
38 d2 93 a3 1a 08 d6 d5 e6 0c 50 ef 53 1d 93 cd  8.........P.S...
11 1f b2 a7 d6 c8 6e a1 af 83 d3 8c b6 be 16 76  ......n........v
b3 d1 5d 7a a2 f0 20 e7 3f e3 a0 39 37 77 a3 84  ..]z.. .?..97w..
fc 6b c0 4d 23 93 a2 4d 20 f7 53 90 29 38 7a e1  .k.M#..M .S.)8z.
49 0d f3 97 12 e2 80 26 f0 dc 61 54 48 0f bf a4  I......&..aTH...
4f 46 70 d3 ca c9 4f 53 ac 32 8d f1 cc 0d dc 51  OFp...OS.2.....Q
b1 34 16 21 05 34 c8 15 ff 9a 5a 6a e9 b8 51 0a  .4.!.4....Zj..Q.
e6 d0 eb e9 36 d2 6a ce d0 3d 80 2e cb 98 fc d7  ....6.j..=......
99 4f 96 a7 2c cb 94 e7 56 da 98 bb 71 01 4a 53  .O..,...V...q.JS
f6 aa 1f aa aa d4 23 e6 cd ff 55 6a 76 9f c7 ff  ......#...Ujv...
a7 16 97 52 bd 1e f2 e8 1c af 45 d9 7e 93 66 f4  ...R......E.~.f.
b4 4c c6 5d 45 5b 51 e0 d0 de 70 79 69 61 df 79  .L.]E[Q...pyia.y
09 43 84 cb f6 bd cf 87 8d 25 9d fd 40 2a 78 fb  .C.......%..@*x.
40 f1 27 ba 57 a1 fb 0b 40 7f 27 7a b8 16 cd 8a  @.'.W...@.'z....
b6 b7 c8 5b 07 62 d1 b6 6a 2e 28 b8 9d 8a 81 56  ...[.b..j.(....V
ca 2e bc 6d 52 88 be 41 86 68 79 c8 3e a3 ad 0b  ...mR..A.hy.>...
60 6e f9 30 8f 6d 21 12 9b 49 59 e7 a0 1f fc f0  `n.0.m!..IY.....
14 1c 6e 8f 0c df f9 74 c6 f4 d2 b7 1a d3 65 5c  ..n....t......e\
fb e5 1b fe 77 ff 35 70 74 9a df e0 67 4e 02 7c  ....w.5pt...gN.|
5b fe a5 71 4c dd 35 36 07 ff 2e df 39 47 eb bd  [..qL.56....9G..
a4 d9 dd 91 27 07 39 c1 59 ff e6 63 f8 98 e2 49  ....'.9.Y..c...I
b0 90 95 4c 99 07 73 30 83 1c 4f 8a ca 36 56 62  ...L..s0..O..6Vb
01 2d aa a1 af 7a 43 0f 7f d1 00 fc df c5 eb dc  .-...zC.........
00 a9 01 e2 a6 46 0c d8 ab 8d 67 b7 24 b9 a7 a4  .....F....g.$...
a1 41 99 34 9c 06 10 e4 a3 5d 38 9a ef 1f e9 bb  .A.4.....]8.....
95 3d 62 85 2d 9a 73 c0 b2 0a                    .=b.-.s...
8d fd 47 8c 57 d6 fe 44 85 06 93 f6 59 e5 2e 19  ..G.W..D....Y...
21 b8 e1 fc 3e 4f 40 51 03 82 79 9b a3 f8 c5 9e  !...>O@Q..y.....
42 34 c2 37 c3 c3 c9 ed 77 0f 40 05 f0 9c 28 a6  B4.7....w.@...(.
16 43 78 a0 fe 9a 3f b8 d3 b8 71 57 08 1e 81 b0  .Cx...?...qW....
5a ba 35 7d c4 7a c2 63 dc 75 30 98 84 4b d0 df  Z.5}.z.c.u0..K..
56 0d 31 9d a4 7c 56 69 87 23 20 cb 62 02 84 e4  V.1..|Vi.# .b...
44 c3 d8 26 44 2a dc 51 84 06 e0 26 4c d3 06 fa  D..&D*.Q...&L...
13 48 69 07 57 16 f3 0d dd 20 3a ed 12 a0 4e 36  .Hi.W.... :...N6
dc d5 97 44 22 ad 4f 55 90 f8 69 5d c1 af 33 8f  ...D".OU..i]..3.
f2 36 b0 c1 4c 88 51 a6 91 e3 65 68 95 95 49 8f  .6..L.Q...eh..I.
13 23 bb fa 42 ec 4a bb f2 11 3c d4 07 aa c5 4d  .#..B.J...<....M
cb 19 c5 3e 96 03 3b d4 44 e8 b4 19 ee 25 6d fc  ...>..;.D....%m.
2c 74 99 46 c0 1d f9 dc 83 02 0c 19 ee e2 3b 33  ,t.F..........;3
94 40 ab d7 6c 08 43 ea a7 c0 a8 86 83 94 01 68  .@..l.C........h
00 db df f1 98 d8 99 dc 9e 67 db 49 bd 03 1f bc  .........g.I....
6e 82 06 15 01 e6 65 3c d9 ad 59 26 d2 38 55 e2  n.....e<..Y&.8U.
e7 66 b6 9a 86 57 5f 73 f6 19 62 c7 93 b2 79 ea  .f...W_s..b...y.
a0 9d a3 f6 e4 09 41 32 22 7b 81 33 b8 40 40 c2  ......A2"{.3.@@.
bb 9e 81 21 02 0a                                ...!..
4e 3b dd 18 18 15 04 10 b2 ed f1 4f 6e 1e 42 50  N;.........On.BP
f1 96 da b5 63 a3 89 74 10 a0 d6 9e 17 03 03 01  ....c..t........
19 27 ce f8 93 30 65 8b 1f c4 1b d4 cb cf be 27  .'...0e........'
f7 4b 6b 3a 4e fb e0 61 78 f1 8e f7 28 2e 57 cb  .Kk:N..ax...(.W.
60 2f 37 c1 03 e3 fb 85 16 6a 39 0e 47 2e 67 1f  `/7......j9.G.g.
0d d9 b2 fa 95 92 1f 7d a6 bd ef 6c ee b0 47 2a  .......}...l..G*
d4 6f 89 c9 01 b7 b3 cc 66 af 34 6b d2 18 26 58  .o......f.4k..&X
11 c5 22 47 3b d9 0b ef f2 b9 17 c8 15 25 e9 36  .."G;........%.6
22 f8 96 dd da d6 46 2a 0c cd df 3c ba 67 cc 2b  ".....F*...<.g.+
8a 24 f3 c9 3a c6 d6 29 74 db 4e dd 9b 5e 3e b3  .$..:..)t.N..^>.
3d a0 be 65 86 01 91 17 ab 84 c8 6d 27 1b be 53  =..e.......m'..S
2d 40 35 b1 27 6b 9e c1 f7 da ac a2 03 5c 42 9b  -@5.'k.......\B.
56 b4 1d 3e 27 0c f3 f6 f8 d1 b5 de b2 81 ce f6  V..>'...........
a6 05 e3 2d 97 6f 43 97 ee 81 64 bc a7 3e 69 a8  ...-.oC...d..>i.
fe 9f b5 2f ad b7 53 63 bf e6 f6 be 59 4d 73 62  .../..Sc....YMsb
66 39 20 9b f2 51 92 97 a8 67 bf 1f f9 c4 78 5a  f9 ..Q...g....xZ
f1 23 a2 4d 77 47 2a 96 2d 91 f8 c2 8e fd 1e 92  .#.MwG*.-.......
f2 22 75 b5 16 4a 9e 6f ce 3c 72 19 cd 8b 3d 12  ."u..J.o.<r...=.
b8 27 dc 6f 05 19 8c 51 0d e3 59 7d cf ec b7 90  .'.o...Q..Y}....
02 e3 af 97 3c f1 be c7 f6 b6 17 03 03 00 35 62  ....<.........5b
e7 f0 0c 2b 7d bb 0d 9b 47 fc 54 dc ea c3 ca 48  ...+}...G.T....H
a4 18 16 42 2b 54 86 f1 c0 f6 80 3d 34 24 89 3e  ...B+T.....=4$.>
a3 6a 4a 0e 4d d1 ad d4 2d 0b 93 87 e4 73 d9 69  .jJ.M...-....s.i
77 3e fb 17 17 03 03 00 8b 36 50 1e f1 76 f5 4a  w>.......6P..v.J
20 4d ba e4 72 13 1b 75 d4 1a 5a 4b da 42 c7 a5   M..r..u..ZK.B..
64 2c 16 ee b5 34 4a d8 c9 31 35 c6 2c 47 97 2e  d,...4J..15.,G..
7a 9e 20 53 7e 60 f6 00 48 5d cd 91 48 ce 6d a3  z. S~`..H]..H.m.
ca 69 9d 0b bb ab bb 44 14 fd 11 55 fd d7 7f 41  .i.....D...U...A
28 74 31 06 54 c6 1b 09 c5 8b 8a 92 21 c2 8a 7c  (t1.T.......!..|
11 90 00 d9 52 a3 99 16 f3 4b ec 11 85 00 2c 5c  ....R....K....,\
5e bd 23 41 bc 27 48 5c 28 a2 e2 b3 79 4e 57 55  ^.#A.'H\(...yNWU
a0 38 c8 ca 78 1b aa 85 bc ec 31 44 1f 55 7f 2e  .8..x.....1D.U..
e3 c1 b1 51                                      ...Q
--
> 2024/01/16 07:46:35.000753343  length=64 from=517 to=580
14 03 03 00 01 01 17 03 03 00 35 82 88 0a        ..........5...
c9 af ee 36 dc 0a                                ...6..
cb e6 5b e4 e5 67 a3 1b 4a 69 66 01 a1 16 99 ac  ..[..g..Jif.....
88 e5 23 bf 5a 17 21 b7 5b 33 68 21 23 9c 3b 4e  ..#.Z.!.[3h!#.;N
b5 98 62 03 c1 f4 61 81 08 c2 b3 bf              ..b...a.....
--
> 2024/01/16 07:46:35.000753420  length=143 from=581 to=723
17 03 03 00 51 70 2b 30 b4 52 7a 1c fa 66 2c d0  ....Qp+0.Rz..f,.
78 dd cd 73 7f a6 d3 a2 e1 89 d3 20 30 63 1a 34  x..s....... 0c.4
77 e1 b1 82 72 73 38 bd 52 a5 4c d2 a6 2f 04 d4  w...rs8.R.L../..
dc 92 28 e4 4f e3 3c f0 db 71 76 05 90 d9 a6 56  ..(.O.<..qv....V
af 0f f6 92 71 03 0c fd 1c b8 d6 65 74 0f c5 b2  ....q......et...
7a 73 10 ae 3a e1 17 03 03 00 34 46 b7 f1 06 70  zs..:.....4F...p
20 c4 1b f8 06 19 96 c7 74 11 ed 96 39 46 3a 37   .......t...9F:7
b3 bc 8c 56 1c 2a a8 5f c5 27 33 37 c8 e1 cb bc  ...V.*._.'37....
73 ff 72 45 1c f0 8b 7d fb 4f 39 e6 b9 0e 8a     s.rE...}.O9....
--
< 2024/01/16 07:46:35.000753632  length=61 from=1572 to=1632
17 03 03 00 38 d0 52 27 b9 52 3b 14 6d 3b 51 4d  ....8.R'.R;.m;QM
68 31 0e a6 9a 65 93 f5 60 31 11 e2 90 2c bc 9c  h1...e..`1...,..
5e 27 72 19 be ee 7e 81 2d 72 cf df 81 33 2d c5  ^'r...~.-r...3-.
09 32 c6 96 60 1a 47 02 76 8f 42 22 7a           .2..`.G.v.B"z
--
< 2024/01/16 07:46:35.000753725  length=66 from=1633 to=1698
17 03 03 00 1e a5 8a da 71 d8 5b cb 4c de 11 5f  ........q.[.L.._
d1 d5 f0 ea 2e e6 59 74 69 19 1c 57 49 8a 61 29  ......Yti..WI.a)
4c 4c e6 17 03 03 00 1a 8e 5e e5 28 a4 8b c2 51  LL.......^.(...Q
0c cd 4b d3 97 07 7d 8e 1e 36 39 84 c8 60 e2 1c  ..K...}..69..`..
bd 1d                                            ..
--
> 2024/01/16 07:46:35.000753832  length=31 from=724 to=754
17 03 03 00 1a 75 cb 2e f6 4b 97 3b 2f 9f b8 c1  .....u...K.;/...
30 78 a3 e0 ab 18 0c be 20 51 ee ae 84 97 fc     0x...... Q.....
--
< 2024/01/16 07:46:35.000753883  length=4024 from=1699 to=5722
17 03 03 00 41 1b 88 4f 77 f9 36 e5 36 f4 77 70  ....A..Ow.6.6.wp
3f 2f 3d 0d 57 c5 0f 82 99 4d a5 05 0c d3 d4 64  ?/=.W....M.....d
f7 a0 27 3b 79 2f 2f ce 71 dc b1 3e cc 83 db cf  ..';y//.q..>....
f8 a4 24 c8 67 96 38 d0 9d 47 66 7a 3a 4b 35 a3  ..$.g.8..Gfz:K5.
ab 35 86 a0 98 a8 17 03 03 0f 6d 6b 38 b8 98 17  .5........mk8...
83 0c d6 3b 17 80 73 b6 41 08 d9 78 ff b4 6c 28  ...;..s.A..x..l(
3f 53 e3 72 22 e3 bd c9 3b fb 42 20 d0 b4 29 dd  ?S.r"...;.B ..).
0c b2 5e 82 12 cd be 38 19 3e 6e c4 f7 82 58 9e  ..^....8.>n...X.
74 5f 78 2b e3 1a 25 82 b2 40 d4 bc 7c 09 3c 72  t_x+..%..@..|.<r
e0 9c f5 4f 84 00 cb 35 bb cd 3d 57 9e 7a 9b 61  ...O...5..=W.z.a
77 64 a2 4b 6c c9 3d 8c e5 92 f7 ae 5e 89 f8 d3  wd.Kl.=.....^...
99 f7 7e 77 49 3f 31 a2 7f 1a af 9a f9 52 46 04  ..~wI?1......RF.
30 ab 5a 16 e8 23 d6 c1 26 8c 0d 90 a1 8b 00 1a  0.Z..#..&.......
6b fa a0 ae de 05 6a d0 5c 1e da f8 90 19 07 c7  k.....j.\.......
62 cf 66 fe 33 b2 49 3c a8 cc 1e 1d 9e c4 06 4c  b.f.3.I<.......L
40 bd be 66 3d 31 17 e4 90 65 9a fa a9 c9 68 96  @..f=1...e....h.
00 ba 20 86 a7 98 d8 06 59 8f f2 7c fe d4 04 69  .. .....Y..|...i
1d 96 67 25 60 bd 73 7e a9 4b ac e5 12 30 b4 6d  ..g%`.s~.K...0.m
a1 61 19 3a 49 43 d9 e0 c9 3e 2f 83 94 71 7f eb  .a.:IC...>/..q..
04 00 bd 2a 04 d3 f6 50 ec 36 73 d0 2a 0a        ...*...P.6s.*.
b3 f9 67 43 95 3b 73 dd 69 82 79 0a              ..gC.;s.i.y.
f8 ae 80 42 c3 82 6f 1c 40 ec ef 7c 81 57 14 c5  ...B..o.@..|.W..
df 8c 3a 1d 0c 58 18 cc ee 57 b0 20 6c 24 22 a6  ..:..X...W. l$".
01 d4 0b 11 4f ac 17 7a 09 c1 ac dd ff 8e f3 38  ....O..z.......8
8c 59 8a 62 a9 5e 33 aa 07 8a 0f 62 a1 fd 50 1b  .Y.b.^3....b..P.
0b 7e 50 4c 53 e8 f7 16 43 a8 a4 aa 2b 96 88 ab  .~PLS...C...+...
a8 93 bf e4 52 0c 27 fc fc 17 ac 18 ad ab 41 62  ....R.'.......Ab
99 3f 0a                                         .?.
69 0f c9 6e 61 81 8c 0b ea bd 42 62 48 ac 36 09  i..na.....BbH.6.
c8 83 84 71 ec 27 89 c5 3b ff 05 1e dd dd 06 b3  ...q.'..;.......
24 38 d9 eb 2f f0 c6 31 75 9e cf 56 1b 54 dc 32  $8../..1u..V.T.2
d8 08 e8 7c f1 ec 54 65 bd 30 5d c4 e6 cf 55 31  ...|..Te.0]...U1
a5 78 6e 6a 21 5c f1 0f 91 9e a2 16 6e dd d6 05  .xnj!\......n...
11 b4 51 87 c7 6e 41 9c 14 6c e2 0d b3 c6 71 c2  ..Q..nA..l....q.
07 87 69 8e 33 f4 56 4a f9 f7 e2 89 89 bf 57 52  ..i.3.VJ......WR
49 d2 f9 65 28 51 fa 3e 55 05 87 be 34 f1 2e 56  I..e(Q.>U...4..V
37 c1 63 73 e5 e8 5d 94 27 8f 87 70 f9 6f 1e 9a  7.cs..].'..p.o..
54 23 6d 0a                                      T#m.
f4 6a ef 33 2b ba 25 5c ec 90 ba 6e fa a1 e2 26  .j.3+.%\...n...&
99 f4 8d 3b cd bf b4 c9 d5 aa 5f 29 97 e8 3d b8  ...;......_)..=.
7c d8 b1 5f 44 f6 ef 68 c2 07 62 5f f3 c5 c7 f4  |.._D..h..b_....
a0 f7 6c 92 c1 90 7b 57 f0 07 66 8c 36 65 60 98  ..l...{W..f.6e`.
8d 4a fc bd 23 b7 c0 0b 64 b9 9f 88 b6 31 51 46  .J..#...d....1QF
c2 95 03 94 e8 ea 6f 4b 61 33 af 52 c3 d7 f1 be  ......oKa3.R....
a3 3f 65 0a                                      .?e.
b6 a0 f9 8d f1 9d 1b 48 14 09 63 4e 09 13 4b a5  .......H..cN..K.
38 dd 16 46 0b e4 72 13 45 7a d5 98 a2 d0 c1 c2  8..F..r.Ez......
51 b0 b9 93 f5 c1 54 f6 0b 31 14 a8 fe f5 a3 06  Q.....T..1......
8e a2 59 15 f6 80 8b 01 b6 7a 6c 46 f4 51 ba 1e  ..Y......zlF.Q..
68 ca c9 8f 63 94 c2 5d 7d 58 8e f3 5e da 00 69  h...c..]}X..^..i
e8 34 7f a3 7f f7 6c 84 69 1d ec 7c 03 4c be 3d  .4....l.i..|.L.=
ef 29 a8 f9 86 69 8d 14 0d 5e 15 bc 66 77 e3 dd  .)...i...^..fw..
1d 58 fd a6 c0 2b 23 4c 50 9f 43 97 6b 91 e5 21  .X...+#LP.C.k..!
94 80 d0 0c 7e 22 65 ac a3 c1 0c fb b9 ad 1a 7f  ....~"e.........
95 a8 8e 62 ae d4 c1 ef ae ae 2d 9f e4 1f 96 f4  ...b......-.....
85 eb d6 f2 8c 55 30 eb 2f 73 3c 6b 8e e6 d2 8b  .....U0./s<k....
1f fe 60 dd 41 4c d2 e1 e6 94 6e bf 87 c0 2f 87  ..`.AL....n.../.
0c ad 05 72 48 09 82 92 45 32 64 45 80 f2 1b da  ...rH...E2dE....
25 6e 85 9f 9e 37 88 15 76 c5 9a 0d 1b 7d 8d cc  %n...7..v....}..
16 d6 7f 99 60 0d 97 2d e3 5b 0c ec 53 39 be b6  ....`..-.[..S9..
aa 01 69 ed 45 5d b7 09 a8 7e bc 87 65 26 6a 87  ..i.E]...~..e&j.
c7 96 76 f2 37 eb f8 5d b9 60 b8 ae 60 79 2d 42  ..v.7..].`..`y-B
a3 83 0d fa 44 ed 48 c2 eb 55 c7 2b 75 04 bf d1  ....D.H..U.+u...
cb 20 c8 33 f3 21 91 98 60 a3 44 9b df e5 6b 1b  . .3.!..`.D...k.
74 30 aa fe 34 00 c1 1a 0e 8b 7b da 18 3c 0b 41  t0..4.....{..<.A
fc f0 fe 98 98 cd 35 ad 0c 2e 15 79 e6 e1 f5 24  ......5....y...$
99 a3 14 22 0d 79 ec db f4 da c9 de cd cc 94 b3  ...".y..........
82 d5 ec 31 2f b5 5d 3d 7f 19 e4 71 08 31 29 cb  ...1/.]=...q.1).
2e e2 dc be b0 60 8e 2f be 0f 2a 69 30 c5 b5 23  .....`./..*i0..#
4e e5 99 fb 04 c5 cb f6 60 88 97 31 e6 3d 18 6e  N.......`..1.=.n
d4 0d 33 93 41 06 7f f4 ca b2 ff 16 40 85 f7 9d  ..3.A.......@...
28 a4 94 6a 18 01 77 b8 a4 86 eb 1f ad 9e 82 e8  (..j..w.........
fd 87 ce 5c ed 4c 03 90 17 40 d2 2e aa 79 26 2b  ...\.L...@...y&+
e3 64 c3 99 35 6c b8 fe 30 1e 4b 17 d9 ed 23 9e  .d..5l..0.K...#.
0f 6b cc 43 30 af 59 2a 4e 5f 31 63 df b7 12 ff  .k.C0.Y*N_1c....
40 67 4c e7 f3 64 00 fb d1 a4 f5 9e ea 63 b6 2b  @gL..d.......c.+
a7 ba 25 1d 05 d8 12 a8 ee 2b 30 57 45 00 3e 27  ..%......+0WE.>'
77 e1 7d 24 94 59 29 1f a9 df bd 36 61 ee b1 8f  w.}$.Y)....6a...
06 33 c9 92 a4 99 63 7b 59 45 67 6e 51 64 17 4e  .3....c{YEgnQd.N
05 c0 11 83 3c 9b f3 09 04 d4 34 ac b8 a0 fc 63  ....<.....4....c
eb 5d 65 2b e4 86 ee c2 ba 07 9a f2 fd e4 53 f1  .]e+..........S.
20 cd a8 1b 0b 37 df 18 67 98 39 a3 4b 34 dc be   ....7..g.9.K4..
f3 f6 d0 a7 cb 4d 87 f2 44 ca cb be 1f 67 22 62  .....M..D....g"b
25 2a bd 6c df 30 e9 d1 14 37 3c c0 7b aa ce ce  %*.l.0...7<.{...
01 72 37 3e b5 45 31 ac 56 07 8e ea 6b 8a 0b 73  .r7>.E1.V...k..s
87 d8 26 d0 2e 19 72 2e ae e8 ce 6d c6 91 9d a1  ..&...r....m....
28 63 8a 48 90 68 ea 03 52 c4 88 7d 01 9f 0d 06  (c.H.h..R..}....
ff f0 c4 23 96 55 28 bd 51 ba ab 50 83 f2 f4 bd  ...#.U(.Q..P....
38 13 7b ca 08 5f 14 e6 ac 4b 6a c5 77 4c aa 4f  8.{.._...Kj.wL.O
ab bc ca 71 ce 3e 82 dd a7 56 d8 fa e8 dc 65 9e  ...q.>...V....e.
8c 1d b2 73 b0 e0 ca 1b 18 a3 80 90 2d 0c 4b c8  ...s........-.K.
81 84 7e 72 92 4c a3 57 d3 91 38 8c 32 70 43 56  ..~r.L.W..8.2pCV
26 2f 46 27 64 96 af 2f ec 34 2e c9 eb dc 97 fe  &/F'd../.4......
57 24 66 44 27 ec 53 9b b3 ac 57 95 97 1a 4d 15  W$fD'.S...W...M.
92 d1 0d 9a fe 4a b9 83 9a b7 70 12 89 8c 8d ef  .....J....p.....
56 28 9b d7 e5 7a f2 43 84 c0 d3 25 48 58 e5 d4  V(...z.C...%HX..
b6 2e 80 a7 e1 29 71 36 f7 12 0f 22 c5 d3 87 1b  .....)q6..."....
ed 3f 52 cb dc 1d 31 65 c5 7f 8e d0 f7 10 95 ae  .?R...1e........
8e 30 56 eb 59 6b 62 db c6 f8 c4 0a              .0V.Ykb.....
09 86 a5 db df a9 94 b4 97 e3 24 66 3a d0 e7 c4  ..........$f:...
f7 e5 4d bf f1 b0 70 08 c3 b7 8b 64 7e 03 02 5b  ..M...p....d~..[
f6 66 cc aa 36 a3 2c 33 f8 69 aa cd 3e 49 0b 61  .f..6.,3.i..>I.a
c6 8e 23 43 12 88 bc e0 f5 b0 c8 3a 16 6b 91 cf  ..#C.......:.k..
e4 a0 87 76 df 1c 1d c5 91 53 c5 9c 1b ff 95 cc  ...v.....S......
6b 4d b2 1c a9 7b 51 90 89 fe 6b fa 72 21 c2 02  kM...{Q...k.r!..
6b a5 aa 46 ac 43 37 57 5b f2 91 bb c6 55 82 b1  k..F.C7W[....U..
0a                                               .
c4 ca 69 d4 ab fd bb aa 57 1f b3 b0 aa 58 28 6e  ..i.....W....X(n
32 f7 60 0e 9b ee 50 ee 96 cb 50 0d 37 5b 98 8f  2.`...P...P.7[..
0d 46 86 eb 39 5e 25 c9 03 bb a0 ab 4c e7 23 b4  .F..9^%.....L.#.
c5 aa 55 58 08 b6 36 87 2c e4 6f 79 5a 1e f3 62  ..UX..6.,.oyZ..b
66 13 e8 bc e0 b0 a1 80 0b 08 79 d0 31 c1 80 69  f.........y.1..i
5d ac bb 90 9e 14 ca 09 9a da fa af 9a d4 d2 c4  ]...............
c8 60 c5 fd da ea 33 46 00 15 32 1d 94 9e be b7  .`....3F..2.....
1e f5 96 fc 2a 45 6f 25 62 53 96 f2 44 41 bb 77  ....*Eo%bS..DA.w
7d d5 e7 9c ff 9b 18 26 76 87 8f 17 26 5d f7 91  }......&v...&]..
0c 33 d9 e6 c3 dd 43 b2 6e 9f 71 08 cc ac 1a 19  .3....C.n.q.....
da 9f 72 f1 5f 55 7e 87 7e 9e 21 46 0a           ..r._U~.~.!F.
1f 7f 78 3d 2e bc b3 3b 9f 1c 77 c7 ff 20 5e 9a  ..x=...;..w.. ^.
f7 e6 3c fe 1f 05 ee a8 ec b3 47 51 f5 94 aa 44  ..<.......GQ...D
57 df d7 86 01 30 4f 36 db 94 0a                 W....0O6...
e4 09 30 79 70 ef 7c 96 9e a2 3e 97 6b 23 9f 6c  ..0yp.|...>.k#.l
3e b3 47 da 5c ed 5b 4d 36 10 4e 3c 30 a6 af 42  >.G.\.[M6.N<0..B
a8 ac 59 f3 94 19 ce 3a 0f 03 59 ae 1c 08 8d c4  ..Y....:..Y.....
0f 29 7c a3 d6 c8 04 59 31 3b c6 55 8a 73 e9 d5  .)|....Y1;.U.s..
59 08 58 03 f0 3c 83 63 20 fa 41 d1 84 2b e8 4f  Y.X..<.c .A..+.O
89 23 76 91 70 74 45 5c fb 19 6f 24 dc de e1 a8  .#v.ptE\..o$....
02 2e a4 13 43 94 4b 48 43 ea 1c a9 8e 49 af 5a  ....C.KHC....I.Z
d8 ed a3 3c 6a ab 0f 3c fe bf 82 9d d7 d2 92 cd  ...<j..<........
44 d1 d1 00 73 6e 59 c8 57 95 40 50 69 79 5b 87  D...snY.W.@Piy[.
df 80 a1 87 67 30 1c 3c db 58 58 2d be 0d 12 e5  ....g0.<.XX-....
a9 ab e9 ff e5 5b b6 02 3b 59 f1 a6 99 a9 d6 ba  .....[..;Y......
c2 ce 8b e5 b8 bc 58 fc db 79 2e 78 ff a6 84 6c  ......X..y.x...l
0a                                               .
e1 e4 d3 f6 c8 52 61 36 75 59 05 03 8b 68 26 63  .....Ra6uY...h&c
df 95 ad c7 be 76 a6 a2 72 65 1b 22 9a 07 0d 4d  .....v..re."...M
ac 54 0d d4 6c 97 f9 4d ce d6 95 fd 9d 26 87 62  .T..l..M.....&.b
01 aa 21 94 e4 a1 d1 f0 fd 76 fa 4f 78 98 77 1b  ..!......v.Ox.w.
3b 82 43 50 4a bc e4 ff 6c 8b 26 4e 76 41 d6 96  ;.CPJ...l.&NvA..
97 5e b4 96 f5 1e 98 53 16 c0 a3 1d b1 51 d9 4e  .^.....S.....Q.N
1e 63 39 1a d8 c6 f7 fa a0 90 25 ee e5 76 c3 38  .c9.......%..v.8
c7 ee 8a 93 ea f9 c3 c2 ea fd 74 ca 3b 96 2f 5c  ..........t.;./\
3d 80 f8 fc ad 06 32 60 fc 23 d8 46 94 3f 65 55  =.....2`.#.F.?eU
c5 bf 26 55 21 a2 14 ae c2 f7 40 95 e9 a0 fc c1  ..&U!.....@.....
c8 d9 1e 1b 5a 13 19 d4 e7 f6 4c 33 9d 13 a7 13  ....Z.....L3....
6b c6 71 73 dd 1e 31 ee 4d fd 00 26 27 a2 22 b1  k.qs..1.M..&'.".
15 0f 31 1e 91 ae 62 78 a8 6e c6 a0 e5 f6 da 4b  ..1...bx.n.....K
b2 b9 30 a9 b1 95 32 3d c1 87 2e 5f 8f 12 30 86  ..0...2=..._..0.
79 a7 35 2e 70 3e 71 6f 35 b7 8e 0d 15 c3 c5 c0  y.5.p>qo5.......
02 19 ba 49 5a 33 22 85 e8 e4 cd 25 d3 ca 49 56  ...IZ3"....%..IV
36 c7 b6 28 0d 50 3f 39 52 00 b4 94 48 23 30 9f  6..(.P?9R...H#0.
5a b2 9c 65 c0 fd 0f 74 dc d4 9c dd 04 03 99 8f  Z..e...t........
cf 6a d4 bc b6 17 8f f6 1d 7d 88 31 1f 2e c0 76  .j.......}.1...v
a2 24 66 fc 79 63 c1 c5 f2 3d b9 01 fb 25 d6 4b  .$f.yc...=...%.K
ba 4b 95 2a d1 e6 b4 6a 7f 13 9f 73 4b 14 8d 19  .K.*...j...sK...
72 7e e8 5b 66 dd b2 5d 68 66 19 f4 f2 96 4b a5  r~.[f..]hf....K.
9a 06 18 0c 77 56 10 44 cf 21 2a 4b f2 3d 5d 0a  ....wV.D.!*K.=].
10 ae 03 08 23 76 cc 06 6d e0 1c a7 c3 e1 b7 70  ....#v..m......p
a2 72 18 7a d4 97 e3 3c b4 9a a4 ed 23 47 1f 43  .r.z...<....#G.C
8e 7c 93 ed 7f 4c da b2 f5 2d 9a c0 9e 3a e7 8e  .|...L...-...:..
0c 6e 1d 14 ff ad ca af 4a 13 a3 4e c5 ea 33 7f  .n......J..N..3.
06 f0 97 ef 31 6c 61 07 57 37 b5 39 a3 9e 6e 58  ....1la.W7.9..nX
1c 26 7d 0e 8a 50 cf 36 14 6d 34 ec c8 80 0a     .&}..P.6.m4....
e7 ba 09 3a 38 9e d5 dc a9 38 d4 4f ad c7 4a 5f  ...:8....8.O..J_
eb aa 4a cc d4 8a 67 86 a5 b1 82 75 d4 ec 4e a7  ..J...g....u..N.
d2 58 93 fe 44 35 f4 f5 4e ab 04 37 66 e8 c0 e9  .X..D5..N..7f...
f1 2c 47 e6 f5 dc 2b f2 85 fb 6a 70 7a 28 60 19  .,G...+...jpz(`.
03 26 ea 44 f1 c0 01 48 20 ab 25 0e 58 ad e6 bd  .&.D...H .%.X...
4a 35 ef 40 d4 b4 dd 25 09 04 25 45 19 2e 62 d2  J5.@...%..%E..b.
97 03 05 02 f0 0e 1e 95 f5 0b 6b 33 0d c0 38 67  ..........k3..8g
d9 b0 b0 8a 68 6a 66 5d 63 b2 19 5a 24 3c d4 a3  ....hjf]c..Z$<..
56 9e 47 05 a6 d5 16 48 49 68 1d c3 6a f0 0f c0  V.G....HIh..j...
24 8e e1 3d eb c9 b5 75 83 55 0b d5 c8 51 b6 33  $..=...u.U...Q.3
b2 1f 99 9e bf 32 5a 45 60 5f 86 7c 85 55 66 24  .....2ZE`_.|.Uf$
69 f7 5f 22 cd 8d c9 31 4e 4c 04 51 59 0e 58 93  i._"...1NL.QY.X.
5b 8c ee f7 ef fb a8 5b a4 bc b3 18 92 d4 7f 86  [......[........
82 a6 a7 57 aa 11 64 d1 45 52 40 5a 5c 4a 1a 01  ...W..d.ER@Z\J..
39 65 74 95 9e 7c 0c 90 a3 dd 87 46 91 33 5d fd  9et..|.....F.3].
52 fb 4e 47 75 4f 99 da ec 33 d3 71 4c bd db 6d  R.NGuO...3.qL..m
a4 b4 00 1b 6b ea 89 70 de ab 5f c7 86 f3 9a 65  ....k..p.._....e
e9 70 2c ed 80 52 7e cf 79 39 f2 e6 f6 b7 32 ce  .p,..R~.y9....2.
70 de eb 02 aa ef e2 25 3d 4f 83 9f 69 6b ff 48  p......%=O..ik.H
25 1f 97 f6 82 0d 04 2e 9b a1 e9 87 c5 40 43 c5  %............@C.
8f 2e c3 27 e9 f3 2d 26 bf 37 ce b3 55 91 87 85  ...'..-&.7..U...
54 39 db e1 5f 26 a9 b2 5d 87 57 28 4f 08 c5 2d  T9.._&..].W(O..-
19 4a 6c 24 11 b8 4d b3 c1 d2 c4 1d 5f 4a dc 49  .Jl$..M....._J.I
2e a8 f3 4e 26 3b 60 b6 bb b4 2e a9 8d 7b 9e bc  ...N&;`......{..
ec e0 a7 26 95 e2 7a d7 f4 fd 4d a7 e1 e4 6a 2b  ...&..z...M...j+
06 6f b9 72 4a e8 78 55 92 54 44 0e ee 06 7a 70  .o.rJ.xU.TD...zp
7c 13 fe 5b d6 be b8 de ca a6 b0 e6 82 e2 d2 e0  |..[............
49 00 6a 03 5a c2 49 d0 95 60 9f f0 15 95 fc d1  I.j.Z.I..`......
82 a4 6e f6 9f 7a 0b 7d e3 95 47 24 22 c4 f7 bd  ..n..z.}..G$"...
42 73 a9 89 20 67 d7 fe 36 d3 51 f2 8e 14 d1 3b  Bs.. g..6.Q....;
9b 2d a4 88 9e 40 84 f5 ea 8e c7 44 93 c9 6d 6f  .-...@.....D..mo
4d d0 e1 56 71 c7 e3 96 f1 7d 95 de be f0 74 eb  M..Vq....}....t.
ae 56 1f d1 32 9f 29 6f 38 67 0d 4e c6 3f d0 48  .V..2.)o8g.N.?.H
74 ef f0 78 df 9d f0 d4 7f 5a 9c 24 37 d7 04 f4  t..x.....Z.$7...
d0 ad 4b 9f 74 3a 47 ee 36 5f d5 e4 08 83 df 6b  ..K.t:G.6_.....k
b9 c9 60 e0 98 ee d0 6e 40 c7 9e eb 9a c7 f1 0d  ..`....n@.......
17 10 6e c4 d9 3c 5b 77 e5 22 e8 cf 26 0f ee a6  ..n..<[w."..&...
96 b7 88 11 79 82 a2 3a 98 cd 21 28 c4 32 9c 89  ....y..:..!(.2..
f6 9f f3 c9 60 f2 bf 1b aa e0 19 4f c2 8c db 03  ....`......O....
73 bc e5 96 e6 4c 36 36 f5 d9 29 69 7b da 39 ba  s....L66..)i{.9.
f1 4b 57 f6 af d1 63 5d 15 ae 98 f7 20 61 a8 ef  .KW...c].... a..
a3 c1 43 8e 7e d8 5a 70 cb 14 fe 2a ff 12 02 65  ..C.~.Zp...*...e
68 a6 1c 68 82 63 0e 7b 0d 0d 36 40 ff 3b 00 e4  h..h.c.{..6@.;..
88 30 cd 1b 99 a4 80 aa ec ec 52 fd 66 27 8f 84  .0........R.f'..
7c 98 ea 43 e4 82 9a 5b e9 ee 4f 73 25 ad 79 38  |..C...[..Os%.y8
0f d6 f6 55 d1 d0 08 93 97 3e 29 58 ea d1 64 d3  ...U.....>)X..d.
19 0e a3 36 f9 4b a0 66 01 ef ca c1 73 14 e7 9d  ...6.K.f....s...
90 0a                                            ..
c2 66 7a 58 f1 35 9a 80 e0 69 25 e4 42 4e 80 4d  .fzX.5...i%.BN.M
d7 d7 3a 14 3a b0 ff ec 45 ab a1 03 db 7f ca 5a  ..:.:...E......Z
d6 58 74 7d 42 ac 0f 37 39 49 8f f7 9e a2 87 31  .Xt}B..79I.....1
f7 af 72 7d d7 74 70 0d 66 59 44 dc a2 ca 43 ee  ..r}.tp.fYD...C.
2d 2d 88 31 5c 5d b1 17 09 d1 d8 ae a1 c3 bc 34  --.1\].........4
f0 06 48 d4 2b 53 5b e8 95 eb 76 b9 8d 1f e2 c7  ..H.+S[...v.....
75 0f 00 ac 3f f3 6f 86 ff 65 c4 94 56 0d 3a b7  u...?.o..e..V.:.
77 cb 7b 8b 77 c1 49 43 84 3d c8 6d 02 8a 58 2f  w.{.w.IC.=.m..X/
99 0a                                            ..
c7 36 c3 1b aa 70 75 1b 8b 3f 96 e2 7d f8 a4 4c  .6...pu..?..}..L
23 0a                                            #.
83 88 8b 6c 5a 09 46 1c 54 00 10 1a 7c 6f 3c bc  ...lZ.F.T...|o<.
2e 10 02 a9 19 1c 4d df e5 70 7f 73 30 72 25 da  ......M..p.s0r%.
09 3c 7e 91 60 1d 58 ea f6 d2 a3 d5 d9 17 1b da  .<~.`.X.........
41 33 e1 47 87 15 4a 62 74 95 3a b6 d7 e3 af 10  A3.G..Jbt.:.....
c2 33 16 bc cd 63 08 a6 9f 01 32 1b 85 a5 78 51  .3...c....2...xQ
ab b2 87 54 81 91 5b bb 0c 3c ce 9d ce 70 44 01  ...T..[..<...pD.
2f 5e 80 a0 99 ec 7a e1 aa 77 2d e5 c9 e9 3b 27  /^....z..w-...;'
b1 62 12 21 08 fc 00 c2 02 69 04 6e 01 cb f5 63  .b.!.....i.n...c
30 80 07 74 2f 96 10 67 fc ae 3b 08 ba 03 d0 5d  0..t/..g..;....]
b7 89 b7 a1 a1 f9 75 73 9e 7b 7d 85 a6 47 eb 60  ......us.{}..G.`
17 7c b0 b5 1a 5b d3 ff c2 da 4e 69 54 de 65 cc  .|...[....NiT.e.
8c d8 c7 d3 c5 28 e4 57 6d b3 63 e4 01 2e 61 97  .....(.Wm.c...a.
ec ff 88 c8 b4 ac 69 7a 89 e1 7a f5 bf d6 46 b9  ......iz..z...F.
e5 ba 9b 1f ac a5 eb 7d 3b dd 74 40 8a cf 59 87  .......};.t@..Y.
a0 e5 b3 42 a8 2f 0d da 36 33 a7 68 3c 7a 22 10  ...B./..63.h<z".
90 7a 12 77 58 90 17 16 9a d4 b2 fa 7a 7a b0 8e  .z.wX.......zz..
b2 8e b5 93 42 d9 03 68 7b 23 df 0a              ....B..h{#..
c7 0e f3 51 aa 89 63 a7 b8 3f d6 9b d0 14 90 4f  ...Q..c..?.....O
d6 7c 4b 69 35 a4 86 80 67 2a fd 95 77 3e ba 84  .|Ki5...g*..w>..
1b 43 c5 11 62 a8 b0 5d 32 0a                    .C..b..]2.
d3 43 91 4e 50 e1 ae d1 2f 0d 88 5a b9 36 0b 3d  .C.NP.../..Z.6.=
0d 73 29 19 34 b0 07 3f 8d ed 1f 77 f1 fe a8 45  .s).4..?...w...E
93 91 fc ad 26 a2 af e7 b1 d9 a4 f6 90 bc 79 3a  ....&.........y:
f7 ca 43 e7 00 be 20 83 ae 98 34 44 0a           ..C... ...4D.
b0 51 56 4c 47 98 b5 b9 8d 15 83 5b 44 c3 13 61  .QVLG......[D..a
4d 8f e4 bf 51 a7 89 eb 47 90 29 70 22 4b 49 bf  M...Q...G.)p"KI.
7e ef 02 f8 ae d0 4a dd 0c 24 3a e9 7c 35 3b e1  ~.....J..$:.|5;.
aa 01 a9 d0 4c 0e b1 c1 70 ec 18 d7 14 4f 03 6d  ....L...p....O.m
7f 3b 1b d7 ff 2d 06 f7 d8 7e 8f 50 57 f6 3b 94  .;...-...~.PW.;.
c0 e0 37 ac 94 29 22 39 30 a5 95 ad eb eb 03 78  ..7..)"90......x
9d 93 e7 a7 44 c5 66 c8 d8 29 13 c0 35 21 00 44  ....D.f..)..5!.D
c0 f2 a1 a6 a4 ed 7c ff 32 2f 78 16 f8 40 e1 a1  ......|.2/x..@..
1d 2a 5b d6 a5 a6 f2 9b 8e 05 09 d0 98 bd e1 bd  .*[.............
e2 72 10 97 ef 5c 20 59 2e 2a 2e 06 f1 cd 1e fc  .r...\ Y.*......
bc a5 39 73 51 b4 eb 5c 11 74 e3 4f b8 a7 a1 9c  ..9sQ..\.t.O....
44 d9 20 8d da 83 61 09 d5 f7 40 94 30 bf ca ec  D. ...a...@.0...
7d 38 12 31 82 c4 69 04 8c c9 fc 34 0a           }8.1..i....4.
11 8f a3 4b 7d 98 c2 2d dd e8 7d 8b bf 58 ca ba  ...K}..-..}..X..
eb ee c5 3f 12 02 a5 e8                          ...?....
--
> 2024/01/16 07:46:35.000759851  length=24 from=755 to=778
17 03 03 00 13 81 55 85 f3 aa 6a fa ed 13 85 cf  ......U...j.....
a6 9f a2 76 d7 9b 00 b2                          ...v....
--
< 2024/01/16 07:46:35.000759997  length=24 from=5723 to=5746
17 03 03 00 13 36 ec 7d 58 7d 32 c5 98 36 f3 db  .....6.}X}2..6..
a6 19 62 61 9c 68 65 46                          ..ba.heF
--
2024/01/16 07:46:35 socat[5166] E write(6, 0x60f1d6d61000, 24): Broken pipe

However, there is nio advantage to this as if they can already MITM the unix file, you already got bigger issues than this 😆

runner/runner.go Outdated Show resolved Hide resolved
runner/runner.go Outdated Show resolved Hide resolved
@LaurenceJJones
Copy link
Contributor Author

Implemented graceful shutdown for all server types. Put cleanup within a defer function which will return once we get a signal through chan

@LaurenceJJones
Copy link
Contributor Author

LaurenceJJones commented Jan 16, 2024

I want to make one more change, and that is moving the listener creation within the run functions

I do that tomorrow as its 11pm here

@LaurenceJJones
Copy link
Contributor Author

LaurenceJJones commented Jan 17, 2024

So might of gone out of scope abit, however, the redirect to https could of been a middleware within gin itself so I have now done this LMK if you think this is out of scope. The redirect function are now obsolete and now used I can reuse them within the gin router itself 🤷🏻

We now only run one http server on two listeners, the functions chains are ensured that the letsscrypt function runs if enabled then passes to gin which was the functionality before**. The first middleware will check if http request needs to be upgrade and returns redirect.

One change in functionality is since gin is handling the upgrade http -> https the 302's are now logged within gin itself

** However, further testing this means on https requests to /well-known/acme-challenge/ will be accepted by letsencrypt function. However, I don't see any issue with this as gin would of responded with 404 anyways.

@jmattheis
Copy link
Member

jmattheis commented Jan 17, 2024

Are the http .well-known requests now redirected to https? They must go directly to the letsencrypt handler, otherwise no TLS can be obtained and https likely doesn't work.

I'd say this is all in scope, the change looks kinda complicated now but I've only took a quick glance at it (seems reasonable, at second glance (: ). Will review and test it on the weekend.

@LaurenceJJones
Copy link
Contributor Author

LaurenceJJones commented Jan 17, 2024

Are the http .well-known requests now redirected to https? They must go directly to the letsencrypt handler, otherwise no TLS can be obtained and https likely doesn't work.

I'd say this is all in scope, the change looks kinda complicated now but I've only took a quick glance at it (seems reasonable, at second glance (: ). Will review and test it on the weekend.

I tested it just with it let's encrypt enabled flag and it worked on non https connection with redirect flag. Because the handler is wrapped the acme stuff happens first then the https upgrade is run afterwards if the url didn't pass the acme handler filter.

@LaurenceJJones
Copy link
Contributor Author

LaurenceJJones commented Jan 18, 2024

Implemented error handling now, so if user did supply http and tls unix sockets the other would be cleaned up if the other failed to bind. It best to avoid log.Fatal as we dont actually handle the error and nothing get cleaned up. Useful learning experience about the different waitgroups there are.

╭─loz repo: server/build on  master [!?] took 1ms
╰─λ GOTIFY_SERVER_SSL_CERTKEY=domain.u.key GOTIFY_SERVER_SSL_CERTFILE=domain.crt GOTIFY_SERVER_SSL_ENABLED=true GOTIFY_SERVER_LISTENADDR=unix:test.sock GOTIFY_SERVER_SSL_LISTENADDR=unix:test.s.sock ./gotify-linux-amd64
Starting Gotify version unknown@unknown
[GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production.
- using env:   export GIN_MODE=release
- using code:  gin.SetMode(gin.ReleaseMode)

[GIN-debug] GET    /                         --> github.com/gotify/server/v2/ui.serveFile.func1 (7 handlers)
[GIN-debug] GET    /index.html               --> github.com/gotify/server/v2/ui.serveFile.func1 (7 handlers)
[GIN-debug] GET    /manifest.json            --> github.com/gotify/server/v2/ui.serveFile.func1 (7 handlers)
[GIN-debug] GET    /asset-manifest.json      --> github.com/gotify/server/v2/ui.serveFile.func1 (7 handlers)
[GIN-debug] GET    /static/*any              --> github.com/gotify/server/v2/ui.Register.WrapH.func2 (7 handlers)
[GIN-debug] GET    /health                   --> github.com/gotify/server/v2/api.(*HealthAPI).Health-fm (6 handlers)
[GIN-debug] GET    /swagger                  --> github.com/gotify/server/v2/docs.Serve (6 handlers)
[GIN-debug] GET    /image/*filepath          --> github.com/gin-gonic/gin.(*RouterGroup).createStaticHandler.func1 (6 handlers)
[GIN-debug] HEAD   /image/*filepath          --> github.com/gin-gonic/gin.(*RouterGroup).createStaticHandler.func1 (6 handlers)
[GIN-debug] GET    /docs                     --> github.com/gotify/server/v2/docs.UI (6 handlers)
[GIN-debug] GET    /plugin                   --> github.com/gotify/server/v2/api.(*PluginAPI).GetPlugins-fm (9 handlers)
[GIN-debug] GET    /plugin/:id/config        --> github.com/gotify/server/v2/api.(*PluginAPI).GetConfig-fm (9 handlers)
[GIN-debug] POST   /plugin/:id/config        --> github.com/gotify/server/v2/api.(*PluginAPI).UpdateConfig-fm (9 handlers)
[GIN-debug] GET    /plugin/:id/display       --> github.com/gotify/server/v2/api.(*PluginAPI).GetDisplay-fm (9 handlers)
[GIN-debug] POST   /plugin/:id/enable        --> github.com/gotify/server/v2/api.(*PluginAPI).EnablePlugin-fm (9 handlers)
[GIN-debug] POST   /plugin/:id/disable       --> github.com/gotify/server/v2/api.(*PluginAPI).DisablePlugin-fm (9 handlers)
[GIN-debug] POST   /user                     --> github.com/gotify/server/v2/api.(*UserAPI).CreateUser-fm (9 handlers)
[GIN-debug] OPTIONS /*any                     --> github.com/gin-contrib/cors.New.func1 (7 handlers)
[GIN-debug] GET    /version                  --> github.com/gotify/server/v2/router.Create.func4 (8 handlers)
[GIN-debug] POST   /message                  --> github.com/gotify/server/v2/api.(*MessageAPI).CreateMessage-fm (9 handlers)
[GIN-debug] GET    /application              --> github.com/gotify/server/v2/api.(*ApplicationAPI).GetApplications-fm (9 handlers)
[GIN-debug] POST   /application              --> github.com/gotify/server/v2/api.(*ApplicationAPI).CreateApplication-fm (9 handlers)
[GIN-debug] POST   /application/:id/image    --> github.com/gotify/server/v2/api.(*ApplicationAPI).UploadApplicationImage-fm (9 handlers)
[GIN-debug] DELETE /application/:id/image    --> github.com/gotify/server/v2/api.(*ApplicationAPI).RemoveApplicationImage-fm (9 handlers)
[GIN-debug] PUT    /application/:id          --> github.com/gotify/server/v2/api.(*ApplicationAPI).UpdateApplication-fm (9 handlers)
[GIN-debug] DELETE /application/:id          --> github.com/gotify/server/v2/api.(*ApplicationAPI).DeleteApplication-fm (9 handlers)
[GIN-debug] GET    /application/:id/message  --> github.com/gotify/server/v2/api.(*MessageAPI).GetMessagesWithApplication-fm (9 handlers)
[GIN-debug] DELETE /application/:id/message  --> github.com/gotify/server/v2/api.(*MessageAPI).DeleteMessageWithApplication-fm (9 handlers)
[GIN-debug] GET    /client                   --> github.com/gotify/server/v2/api.(*ClientAPI).GetClients-fm (9 handlers)
[GIN-debug] POST   /client                   --> github.com/gotify/server/v2/api.(*ClientAPI).CreateClient-fm (9 handlers)
[GIN-debug] DELETE /client/:id               --> github.com/gotify/server/v2/api.(*ClientAPI).DeleteClient-fm (9 handlers)
[GIN-debug] PUT    /client/:id               --> github.com/gotify/server/v2/api.(*ClientAPI).UpdateClient-fm (9 handlers)
[GIN-debug] GET    /message                  --> github.com/gotify/server/v2/api.(*MessageAPI).GetMessages-fm (9 handlers)
[GIN-debug] DELETE /message                  --> github.com/gotify/server/v2/api.(*MessageAPI).DeleteMessages-fm (9 handlers)
[GIN-debug] DELETE /message/:id              --> github.com/gotify/server/v2/api.(*MessageAPI).DeleteMessage-fm (9 handlers)
[GIN-debug] GET    /stream                   --> github.com/gotify/server/v2/api/stream.(*API).Handle-fm (9 handlers)
[GIN-debug] GET    /current/user             --> github.com/gotify/server/v2/api.(*UserAPI).GetCurrentUser-fm (9 handlers)
[GIN-debug] POST   /current/user/password    --> github.com/gotify/server/v2/api.(*UserAPI).ChangePassword-fm (9 handlers)
[GIN-debug] GET    /user                     --> github.com/gotify/server/v2/api.(*UserAPI).GetUsers-fm (9 handlers)
[GIN-debug] DELETE /user/:id                 --> github.com/gotify/server/v2/api.(*UserAPI).DeleteUserByID-fm (9 handlers)
[GIN-debug] GET    /user/:id                 --> github.com/gotify/server/v2/api.(*UserAPI).GetUserByID-fm (9 handlers)
[GIN-debug] POST   /user/:id                 --> github.com/gotify/server/v2/api.(*UserAPI).UpdateUserByID-fm (9 handlers)
Started Listening for TLS connection on unix test.s.sock
Started Listening for plain connection on unix test.sock
^C⏎                                                                                                                                                           
╭─loz repo: server/build on  master [!?] took 1s
╰─λ touch test.sock

╭─loz repo: server/build on  master [!?] took 1ms
╰─λ GOTIFY_SERVER_SSL_CERTKEY=domain.u.key GOTIFY_SERVER_SSL_CERTFILE=domain.crt GOTIFY_SERVER_SSL_ENABLED=true GOTIFY_SERVER_LISTENADDR=unix:test.sock GOTIFY_SERVER_SSL_LISTENADDR=unix:test.s.sock ./gotify-linux-amd64
Starting Gotify version unknown@unknown
[GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production.
- using env:   export GIN_MODE=release
- using code:  gin.SetMode(gin.ReleaseMode)

[GIN-debug] GET    /                         --> github.com/gotify/server/v2/ui.serveFile.func1 (7 handlers)
[GIN-debug] GET    /index.html               --> github.com/gotify/server/v2/ui.serveFile.func1 (7 handlers)
[GIN-debug] GET    /manifest.json            --> github.com/gotify/server/v2/ui.serveFile.func1 (7 handlers)
[GIN-debug] GET    /asset-manifest.json      --> github.com/gotify/server/v2/ui.serveFile.func1 (7 handlers)
[GIN-debug] GET    /static/*any              --> github.com/gotify/server/v2/ui.Register.WrapH.func2 (7 handlers)
[GIN-debug] GET    /health                   --> github.com/gotify/server/v2/api.(*HealthAPI).Health-fm (6 handlers)
[GIN-debug] GET    /swagger                  --> github.com/gotify/server/v2/docs.Serve (6 handlers)
[GIN-debug] GET    /image/*filepath          --> github.com/gin-gonic/gin.(*RouterGroup).createStaticHandler.func1 (6 handlers)
[GIN-debug] HEAD   /image/*filepath          --> github.com/gin-gonic/gin.(*RouterGroup).createStaticHandler.func1 (6 handlers)
[GIN-debug] GET    /docs                     --> github.com/gotify/server/v2/docs.UI (6 handlers)
[GIN-debug] GET    /plugin                   --> github.com/gotify/server/v2/api.(*PluginAPI).GetPlugins-fm (9 handlers)
[GIN-debug] GET    /plugin/:id/config        --> github.com/gotify/server/v2/api.(*PluginAPI).GetConfig-fm (9 handlers)
[GIN-debug] POST   /plugin/:id/config        --> github.com/gotify/server/v2/api.(*PluginAPI).UpdateConfig-fm (9 handlers)
[GIN-debug] GET    /plugin/:id/display       --> github.com/gotify/server/v2/api.(*PluginAPI).GetDisplay-fm (9 handlers)
[GIN-debug] POST   /plugin/:id/enable        --> github.com/gotify/server/v2/api.(*PluginAPI).EnablePlugin-fm (9 handlers)
[GIN-debug] POST   /plugin/:id/disable       --> github.com/gotify/server/v2/api.(*PluginAPI).DisablePlugin-fm (9 handlers)
[GIN-debug] POST   /user                     --> github.com/gotify/server/v2/api.(*UserAPI).CreateUser-fm (9 handlers)
[GIN-debug] OPTIONS /*any                     --> github.com/gin-contrib/cors.New.func1 (7 handlers)
[GIN-debug] GET    /version                  --> github.com/gotify/server/v2/router.Create.func4 (8 handlers)
[GIN-debug] POST   /message                  --> github.com/gotify/server/v2/api.(*MessageAPI).CreateMessage-fm (9 handlers)
[GIN-debug] GET    /application              --> github.com/gotify/server/v2/api.(*ApplicationAPI).GetApplications-fm (9 handlers)
[GIN-debug] POST   /application              --> github.com/gotify/server/v2/api.(*ApplicationAPI).CreateApplication-fm (9 handlers)
[GIN-debug] POST   /application/:id/image    --> github.com/gotify/server/v2/api.(*ApplicationAPI).UploadApplicationImage-fm (9 handlers)
[GIN-debug] DELETE /application/:id/image    --> github.com/gotify/server/v2/api.(*ApplicationAPI).RemoveApplicationImage-fm (9 handlers)
[GIN-debug] PUT    /application/:id          --> github.com/gotify/server/v2/api.(*ApplicationAPI).UpdateApplication-fm (9 handlers)
[GIN-debug] DELETE /application/:id          --> github.com/gotify/server/v2/api.(*ApplicationAPI).DeleteApplication-fm (9 handlers)
[GIN-debug] GET    /application/:id/message  --> github.com/gotify/server/v2/api.(*MessageAPI).GetMessagesWithApplication-fm (9 handlers)
[GIN-debug] DELETE /application/:id/message  --> github.com/gotify/server/v2/api.(*MessageAPI).DeleteMessageWithApplication-fm (9 handlers)
[GIN-debug] GET    /client                   --> github.com/gotify/server/v2/api.(*ClientAPI).GetClients-fm (9 handlers)
[GIN-debug] POST   /client                   --> github.com/gotify/server/v2/api.(*ClientAPI).CreateClient-fm (9 handlers)
[GIN-debug] DELETE /client/:id               --> github.com/gotify/server/v2/api.(*ClientAPI).DeleteClient-fm (9 handlers)
[GIN-debug] PUT    /client/:id               --> github.com/gotify/server/v2/api.(*ClientAPI).UpdateClient-fm (9 handlers)
[GIN-debug] GET    /message                  --> github.com/gotify/server/v2/api.(*MessageAPI).GetMessages-fm (9 handlers)
[GIN-debug] DELETE /message                  --> github.com/gotify/server/v2/api.(*MessageAPI).DeleteMessages-fm (9 handlers)
[GIN-debug] DELETE /message/:id              --> github.com/gotify/server/v2/api.(*MessageAPI).DeleteMessage-fm (9 handlers)
[GIN-debug] GET    /stream                   --> github.com/gotify/server/v2/api/stream.(*API).Handle-fm (9 handlers)
[GIN-debug] GET    /current/user             --> github.com/gotify/server/v2/api.(*UserAPI).GetCurrentUser-fm (9 handlers)
[GIN-debug] POST   /current/user/password    --> github.com/gotify/server/v2/api.(*UserAPI).ChangePassword-fm (9 handlers)
[GIN-debug] GET    /user                     --> github.com/gotify/server/v2/api.(*UserAPI).GetUsers-fm (9 handlers)
[GIN-debug] DELETE /user/:id                 --> github.com/gotify/server/v2/api.(*UserAPI).DeleteUserByID-fm (9 handlers)
[GIN-debug] GET    /user/:id                 --> github.com/gotify/server/v2/api.(*UserAPI).GetUserByID-fm (9 handlers)
[GIN-debug] POST   /user/:id                 --> github.com/gotify/server/v2/api.(*UserAPI).UpdateUserByID-fm (9 handlers)
Started Listening for TLS connection on unix test.s.sock
Error while running the server Could not listen on test.sock listen unix test.sock: bind: address already in use

╭─loz repo: server/build on  master [!?] took 19ms
[🔴] × ls -la
drwxr-xr-x    - loz 18 Jan 10:09  .
drwxr-xr-x    - loz 17 Jan 10:23  ..
drwxr-xr-x    - loz 18 Jan 10:09  data
.rw-r--r-- 2.5k loz 15 Jan 21:44  config.yaml
.rw-r--r-- 1.2k loz 15 Jan 22:20  domain.crt
.rw-r--r--  956 loz 15 Jan 22:18  domain.csr
.rw------- 1.9k loz 15 Jan 22:20  domain.key
.rw------- 1.7k loz 15 Jan 22:30  domain.u.key
.rwxr-xr-x  35M loz 18 Jan 10:05  gotify-linux-amd64
.rw-r--r--    0 loz 18 Jan 10:09  test.sock

runner/runner.go Outdated Show resolved Hide resolved
LaurenceJJones and others added 2 commits January 20, 2024 10:17
With this you can configure a unix socket in server.listenaddr and
server.ssl.listenaddr by prefixing the socket path with unix:

Co-authored-by: Jannis Mattheis <contact@jmattheis.de>
Copy link

codecov bot commented Jan 20, 2024

Codecov Report

Attention: 16 lines in your changes are missing coverage. Please review.

Comparison is base (0bfa5ca) 86.14% compared to head (8bd514a) 86.89%.

Files Patch % Lines
router/router.go 0.00% 15 Missing and 1 partial ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master     #621      +/-   ##
==========================================
+ Coverage   86.14%   86.89%   +0.75%     
==========================================
  Files          45       44       -1     
  Lines        1609     1587      -22     
==========================================
- Hits         1386     1379       -7     
+ Misses        138      124      -14     
+ Partials       85       84       -1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@jmattheis jmattheis merged commit d32d131 into gotify:master Jan 20, 2024
2 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

Configure the server to listen on a unix socket
2 participants