Ivailo Monev
470d7f91f9
kio: drop support for native dialogs
...
very much broken (with some TODOs, obviously not finished). on the TODO is
to get rid of KFileDialogQtOverride class and hook via QGuiPlatformPlugin
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-04 16:47:53 +03:00
Ivailo Monev
37a9dbe351
kio: deal with FIXME related to KIO::ERR_COULD_NOT_CLOSEDIR
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-04 03:10:58 +03:00
Ivailo Monev
c09633b359
kio: remove unused and private KIO::JobUiDelegate member
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-04 02:50:10 +03:00
Ivailo Monev
77672fbe46
kio: remove deprecated and unused KIO::SlaveInterface methods
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-04 01:30:50 +03:00
Ivailo Monev
7e6a2f1a90
kio: assume dontAskAgainName is send by KIO::SlaveBase::messageBox()
...
it is send always
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-03 14:29:33 +03:00
Ivailo Monev
530f122fa5
kio: use the same integer type as KIO::SlaveBase::messageBox() in KIO::SlaveInterface::dispatch()
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-03 14:25:55 +03:00
Ivailo Monev
9d65dc3c96
kio: KIO::SlaveInterface review
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-03 14:02:02 +03:00
Ivailo Monev
cb8f778490
kio: remove unused KIO::SlaveInterface methods
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-03 13:43:16 +03:00
Ivailo Monev
004e03252f
kio: merge KIO::Slave into KIO::SlaveInterface
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-03 13:37:11 +03:00
Ivailo Monev
a5ae838a0e
kio: const-ify KIO::Slave::suspended() method
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-03 12:34:19 +03:00
Ivailo Monev
03a53c8cb9
kio: rename KIO::Slave::slave_pid() to KIO::Slave::pid() and correct its return type
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-03 12:32:46 +03:00
Ivailo Monev
d55ce7bf9c
kio: de-virtualize KIO::Slave methods
...
no class inherits from it
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-03 12:30:24 +03:00
Ivailo Monev
9e177e6fa9
kio: remove unused and redundant KIO::Slave::slaveProtocol() method
...
returns the same as KIO::Slave::protocol()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-03 12:15:15 +03:00
Ivailo Monev
6d6b5a85fd
kio: remove reference to KIO slave that is no longer maintained
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-03 02:05:48 +03:00
Ivailo Monev
a50ed438a3
kio: remove compatibility bits
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-02 14:52:50 +03:00
Ivailo Monev
23618df1b5
kio: remove duplicate header inclusion
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-02 12:03:16 +03:00
Ivailo Monev
4c7a71e55a
kio: disable ASN for services without entry path
...
it should not be assumed that applications support ASN to begin with but
currently is
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-21 06:12:46 +03:00
Ivailo Monev
53fda3a2f6
kdeui: remove the unused and non-standard LAUNCHED_BY ASN info
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-21 05:23:54 +03:00
Ivailo Monev
e9f6bd28d3
kio: const-ify KIO::Slave getters
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-20 05:49:45 +03:00
Ivailo Monev
219bea5656
kio: deprecation warning fix
...
next time just change the poppler::time_type typedef (less ifdef spaghetti)
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-01-01 21:51:17 +02:00
Ivailo Monev
550ed43ba7
kio: lower the idle slaves life-time to 1 minute
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-01-01 06:15:52 +02:00
Ivailo Monev
4cb8afa14d
generic: remove unused KIO protocol input/output information
...
KIO slaves are either helper (e.g. vnc/rdp), not source (e.g. thumbnail
which is also helper in a way) or have listing capability (e.g. file
which is filesystem type)
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-01-01 02:46:51 +02:00
Ivailo Monev
5e7a19f6f7
generic: store KIO slaves listing capability as boolean
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-01-01 00:57:27 +02:00
Ivailo Monev
c9ee5d3195
kio: add note about a gap in the HTTP RFC
...
HTTP is a one-way street, do I really want to keep a server up until a file
transfer is finished tho (not in the case of KDirShare - the directory may
be unshared because the system is about to be rebooted or shutdown)?
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-29 08:51:56 +02:00
Ivailo Monev
7cfaf11ad3
kio: implement HEAD method for KHTTP
...
kinda not worth it tho - neither browsers nor KIO use it actually, maybe
optimization for bots and web crawlers
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-27 20:29:45 +02:00
Ivailo Monev
45db837f12
kio: initialize KHTTPPrivate::m_filepool member
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-27 18:53:52 +02:00
Ivailo Monev
f5fa2f2fd6
kio: thread the sending of files from KHTTP
...
for small files it may be overkill but for large files it is a huge
difference
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-27 01:18:37 +02:00
Ivailo Monev
0806e846eb
kio: insert Connection header from HTTPHeaders() function
...
required if not supported by the server, for reference:
https://www.rfc-editor.org/rfc/rfc9112#name-persistence
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-26 23:13:02 +02:00
Ivailo Monev
823c98360d
kio: handle content exceptions in KHTTP
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-26 22:06:19 +02:00
Ivailo Monev
f6ef1e42f3
kio: insert Last-Modified header when serving files from KHTTP
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-26 21:49:11 +02:00
Ivailo Monev
b1522a35dd
kio: update HTTP status codes from RFC 9110
...
for reference:
https://www.rfc-editor.org/rfc/rfc9110.html#name-changes-from-rfc-7231
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-26 20:51:41 +02:00
Ivailo Monev
9c3873613c
kio: insert Accept-Ranges header from HTTPHeaders() function
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-26 20:26:04 +02:00
Ivailo Monev
20e8594122
kio: insert Allow header from HTTPHeaders() function
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-26 19:41:44 +02:00
Ivailo Monev
5c7bcd1be4
kio: remove now unused QMutex header inclusion in khttp source file
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-26 19:40:45 +02:00
Ivailo Monev
8fcd182e2f
kio: const-ify the port argument of KHTTP::start()
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-26 16:35:34 +02:00
Ivailo Monev
a9c96f297b
kio: multi-connection safe KHTTP server stop
...
bonus points for not using mutex
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-26 03:58:28 +02:00
Ivailo Monev
529ef6912b
kio: mark the KHTTPPrivate reimplementation as final
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-26 03:21:22 +02:00
Ivailo Monev
4f01c0c369
kio: typo
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-26 03:20:52 +02:00
Ivailo Monev
9446f976e7
kio: thread-safe KHTTP server stop
...
due to QTcpServer deleting clients on close either polling for new
connection has to be done (which will slow down the server a lot) or the
server has to be mutex-locked on per-client basis
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-26 03:18:43 +02:00
Ivailo Monev
0cbc869f50
kio: convert the version to uppercase for the sake of comparison
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-25 21:30:17 +02:00
Ivailo Monev
496c1e3226
kio: send 505 on non-HTTP/1.1 version from KHTTP
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-25 21:29:09 +02:00
Ivailo Monev
362b80c063
kio: send 405 on non-GET method from KHTTP
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-25 21:16:37 +02:00
Ivailo Monev
8731dfa323
kio: add the HTTP status code to the content in HTTPStatusToContent() function
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-25 20:51:39 +02:00
Ivailo Monev
6b61bac251
kio: KHTTP optimization
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-25 20:33:55 +02:00
Ivailo Monev
907782ff6d
kio: KHTTP::respond() documentation update
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-25 18:55:17 +02:00
Ivailo Monev
931a05dbb7
kio: do not assume server does not contain space characters in HTTPHeaders() function
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-25 18:44:18 +02:00
Ivailo Monev
046d5caaee
kio: new KHTTP::setServerID() setter
...
because authentication is done before calling the virtual KHTTP::responed()
method which means that Server header set in the headers from it would have
no effect
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-25 18:33:02 +02:00
Ivailo Monev
11e4eacc8e
kio: pass authentication requirement to KHTTPPrivate::writeResponse()
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-25 18:14:57 +02:00
Ivailo Monev
3dbe3173be
kio: drop support for custom authentication message, de-duplicate code
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-25 18:05:47 +02:00
Ivailo Monev
9e0707ff8b
kio: reject large client payloads in KHTTP
...
for reference:
https://datatracker.ietf.org/doc/html/rfc7230#section-9.3
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-25 17:46:39 +02:00