<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ao2-client/src/network, branch master</title>
<subtitle>AO2 client fork</subtitle>
<link rel='alternate' type='text/html' href='https://git.sof.beauty/ao2-client/'/>
<entry>
<title>Handle extension packets using binary frames</title>
<updated>2026-03-29T22:22:25+00:00</updated>
<author>
<name>Osmium Sorcerer</name>
<email>os@sof.beauty</email>
</author>
<published>2026-03-22T18:56:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sof.beauty/ao2-client/commit/?id=d6352bc889638b82a887e0a1a138f2b8086dbbdb'/>
<id>d6352bc889638b82a887e0a1a138f2b8086dbbdb</id>
<content type='text'>
The subprotocol shall use binary frames, and AO protocol stays separated
within the text frames.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The subprotocol shall use binary frames, and AO protocol stays separated
within the text frames.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add the extension packets</title>
<updated>2026-03-29T22:22:25+00:00</updated>
<author>
<name>Osmium Sorcerer</name>
<email>os@sof.beauty</email>
</author>
<published>2026-03-22T18:16:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sof.beauty/ao2-client/commit/?id=6c30e71ed08cdb838b77b3fe52dea30774574230'/>
<id>6c30e71ed08cdb838b77b3fe52dea30774574230</id>
<content type='text'>
Introduce the subprotocol ("Einsof"), its prototype serialization and
parsing functions, and its first set of messages.

These messages are carriers of public-key authentication mechanism which
involves client request, server challenge, and client response. An
"ident" message is used to tell a compatible server that you support a
particular version of the subprotocol.

Note: the functions that handle encoding are very specialized.
They're not representative of how the wire format should be generally
handled, and were written this way because the first set of messages is
tiny and simple enough.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Introduce the subprotocol ("Einsof"), its prototype serialization and
parsing functions, and its first set of messages.

These messages are carriers of public-key authentication mechanism which
involves client request, server challenge, and client response. An
"ident" message is used to tell a compatible server that you support a
particular version of the subprotocol.

Note: the functions that handle encoding are very specialized.
They're not representative of how the wire format should be generally
handled, and were written this way because the first set of messages is
tiny and simple enough.
</pre>
</div>
</content>
</entry>
<entry>
<title>Support Secure WebSocket</title>
<updated>2026-03-29T22:22:25+00:00</updated>
<author>
<name>Osmium Sorcerer</name>
<email>os@sof.beauty</email>
</author>
<published>2026-03-22T17:57:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sof.beauty/ao2-client/commit/?id=79c2262cae02b513aee70943f7e07a9205316bdf'/>
<id>79c2262cae02b513aee70943f7e07a9205316bdf</id>
<content type='text'>
Add full WSS support to public server list (using wss_port, overriding
insecure port), favorite servers list, and direct connections, and show
which servers are secure.

Revert the upstream's removal of `legacy` ServerInfo field, as I use it
to filter out legacy servers. To differentiate schemes, the `scheme`
field is used, either "ws" or "wss". I don't see the reason to add "tcp"
protocol when we don't even support it.

For the UI, add icons for secure and insecure connections. Highlight
secure servers with a green background.

In the favorite server dialog, a checkbox was added to select whether
the server is using WSS.

In the direct connection dialog, support "wss" scheme and default ports:
80 for WS, 443 for WSS, as per the WebSocket specification.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add full WSS support to public server list (using wss_port, overriding
insecure port), favorite servers list, and direct connections, and show
which servers are secure.

Revert the upstream's removal of `legacy` ServerInfo field, as I use it
to filter out legacy servers. To differentiate schemes, the `scheme`
field is used, either "ws" or "wss". I don't see the reason to add "tcp"
protocol when we don't even support it.

For the UI, add icons for secure and insecure connections. Highlight
secure servers with a green background.

In the favorite server dialog, a checkbox was added to select whether
the server is using WSS.

In the direct connection dialog, support "wss" scheme and default ports:
80 for WS, 443 for WSS, as per the WebSocket specification.
</pre>
</div>
</content>
</entry>
<entry>
<title>WSS support (#1114)</title>
<updated>2026-02-03T09:39:53+00:00</updated>
<author>
<name>stonedDiscord</name>
<email>Tukz@gmx.de</email>
</author>
<published>2026-02-03T09:39:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sof.beauty/ao2-client/commit/?id=5dea0406c73704ebf30cf0b8aac671f698e89959'/>
<id>5dea0406c73704ebf30cf0b8aac671f698e89959</id>
<content type='text'>
* add ssl scheme

* use protocol

* set port

* remove last legacy entry</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* add ssl scheme

* use protocol

* set port

* remove last legacy entry</pre>
</div>
</content>
</entry>
<entry>
<title>use multi-arg</title>
<updated>2025-01-11T08:06:02+00:00</updated>
<author>
<name>in1tiate</name>
<email>32779090+in1tiate@users.noreply.github.com</email>
</author>
<published>2025-01-11T08:06:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sof.beauty/ao2-client/commit/?id=896afaef16cbf42eb662eab899d09daa61821688'/>
<id>896afaef16cbf42eb662eab899d09daa61821688</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>FIx several compiler warnings (#1025)</title>
<updated>2024-07-21T14:34:23+00:00</updated>
<author>
<name>OmniTroid</name>
<email>davidskoland@gmail.com</email>
</author>
<published>2024-07-21T14:34:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sof.beauty/ao2-client/commit/?id=ec914d90478490e3b9fff5bfe71dc232fff1cca1'/>
<id>ec914d90478490e3b9fff5bfe71dc232fff1cca1</id>
<content type='text'>
* Do not use deprecated QAbstractSocket::SocketError

* Do not use deprecated ::location

* Do not discard translation load return value

* Use static function calls where applicable

* Remove unused include

* Remove qt6 check

* Remove deprecated type()

* Remove qt6 check

* Use typeId instead of deprecated type

* clang-format fix</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Do not use deprecated QAbstractSocket::SocketError

* Do not use deprecated ::location

* Do not discard translation load return value

* Use static function calls where applicable

* Remove unused include

* Remove qt6 check

* Remove deprecated type()

* Remove qt6 check

* Use typeId instead of deprecated type

* clang-format fix</pre>
</div>
</content>
</entry>
<entry>
<title>Remove TCP entry point (#1007)</title>
<updated>2024-07-09T11:07:30+00:00</updated>
<author>
<name>Leifa</name>
<email>26681464+TrickyLeifa@users.noreply.github.com</email>
</author>
<published>2024-07-09T11:07:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sof.beauty/ao2-client/commit/?id=efd2571459924f40718130f7edd28a72a76b12d7'/>
<id>efd2571459924f40718130f7edd28a72a76b12d7</id>
<content type='text'>
* Remove TCP entry point

Resolve #987

* Remove TCP entry point
  * Servers that do not support WebSocket will be marked as `Legacy`
  * Removal of TCP connection from the master will follow later.

* Tweaked error message</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Remove TCP entry point

Resolve #987

* Remove TCP entry point
  * Servers that do not support WebSocket will be marked as `Legacy`
  * Removal of TCP connection from the master will follow later.

* Tweaked error message</pre>
</div>
</content>
</entry>
</feed>
