MantisBT - Doomseeker
View Issue Details
0003499Doomseeker[All Projects] Epicpublic2018-09-19 17:322019-06-30 15:31
WubTheCaptain 
Pol M 
lowfeatureN/A
assignedopen 
OpenBSD
1.1 
 
0003499: Port Doomseeker to OpenBSD
Installing Doomseeker (and Wadseeker) on OpenBSD would be easy if it had a port (package) available in OpenBSD. I wish it was as simple as "pkg_add doomseeker"!
No tags attached.
related to 0003660closed Pol M SRB2 plugin: Mangled memory values (runtime crashes) 
parent of 0003247confirmed WubTheCaptain Doomseeker's manual page (mdoc/nroff) is missing or incomplete 
parent of 0003494closed Pol M Master server connections timeout on OpenBSD (UDP packets not sent on Qt5) 
parent of 0003581closed Pol M Version::operatingSystem() knows only about three operating systems (Windows, Linux & Mac) 
parent of 0003498closed Pol M GCC compiler warns of unsafe C/C++ string functions used instead of safer alternatives 
parent of 0003654closed Pol M LAN servers no longer works after OpenBSD hacky fix. 
related to 0003496confirmed WubTheCaptain Document instructions to build Doomseeker on OpenBSD 
related to 0003500assigned Pol M pledge(2) is not yet supported 
related to 0003518closed WubTheCaptain /bin/bash is not portable for running Zandronum testing from Doomseeker; this doesn't work with OpenBSD's base operating system 
related to 0003653assigned Pol M unveil(2) is not yet supported 
Not all the children of this issue are yet resolved or closed.
Issue History
2018-09-19 17:32WubTheCaptainNew Issue
2018-09-19 17:32WubTheCaptainNote Added: 0019573
2018-09-19 17:32WubTheCaptainAssigned To => WubTheCaptain
2018-09-19 17:32WubTheCaptainStatusnew => acknowledged
2018-09-19 17:34WubTheCaptainRelationship addedparent of 0003247
2018-09-19 17:34WubTheCaptainRelationship addedparent of 0003494
2018-09-19 17:35WubTheCaptainRelationship addedrelated to 0003246
2018-09-19 17:36WubTheCaptainRelationship addedparent of 0003496
2018-09-19 17:47WubTheCaptainOS => OpenBSD
2018-09-19 18:09WubTheCaptainRelationship addedparent of 0003500
2018-09-20 16:34ZalewaNote Added: 0019582
2018-09-21 12:51WubTheCaptainNote Added: 0019587
2018-09-21 12:51WubTheCaptainNote Edited: 0019587bug_revision_view_page.php?bugnote_id=19587#r11863
2018-09-24 19:35WubTheCaptainRelationship addedparent of 0003518
2018-09-24 19:36WubTheCaptainRelationship replacedrelated to 0003500
2018-09-24 19:36WubTheCaptainRelationship replacedrelated to 0003518
2018-09-24 19:37WubTheCaptainRelationship replacedrelated to 0003496
2018-09-24 20:17WubTheCaptainNote Added: 0019715
2018-10-07 09:15WubTheCaptainStatusacknowledged => confirmed
2018-12-04 00:14WubTheCaptainCategorySuggestion => Epic
2018-12-04 00:15WubTheCaptainRelationship deletedrelated to 0003246
2018-12-17 04:16WubTheCaptainRelationship addedparent of 0003581
2019-05-20 15:39Pol MAssigned ToWubTheCaptain => Pol M
2019-05-20 15:39Pol MStatusconfirmed => assigned
2019-05-20 15:40Pol MNote Added: 0020682
2019-05-21 22:52Pol MRelationship addedparent of 0003498
2019-05-26 14:54Pol MNote Added: 0020695
2019-05-26 16:43Pol MNote Edited: 0020695bug_revision_view_page.php?bugnote_id=20695#r12599
2019-05-26 16:54Pol MNote Edited: 0020695bug_revision_view_page.php?bugnote_id=20695#r12600
2019-05-30 06:11WubTheCaptainTarget Version => 1.3
2019-05-30 06:29WubTheCaptainRelationship addedparent of 0003653
2019-05-30 06:34WubTheCaptainRelationship replacedrelated to 0003653
2019-06-02 12:37Pol MRelationship addedparent of 0003654
2019-06-09 21:03Pol MNote Added: 0020738
2019-06-12 00:43WubTheCaptainRelationship addedrelated to 0003660
2019-06-12 00:47WubTheCaptainNote Added: 0020747
2019-06-30 10:44ZalewaTarget Version1.3 =>
2019-06-30 15:31Pol MNote Added: 0020860

Notes
(0019573)
WubTheCaptain   
2018-09-19 17:32   
Self-acknowledging, I'll work on this later.
(0019582)
Zalewa   
2018-09-20 16:34   
How is this related to Debian packaging?
(0019587)
WubTheCaptain   
2018-09-21 12:51   
Quote from Zalewa
How is this related to Debian packaging?


Hardly. I figured 0003246 has some similar issues like 0003237 and 0003232, which I didn't bother adding as child tickets individually. Since I didn't try making a port yet, I don't know which issues apply specifically.

(0019715)
WubTheCaptain   
2018-09-24 20:17   
One also needs to optionally install bash from packages/ports to run Zandronum testing releases and join those servers from Doomseeker, until 0003518 is resolved.
(0020682)
Pol M   
2019-05-20 15:40   
I'm gonna be working on making sure that OpenBSD works as intended on the following days. I'll assign myself to the ticket :)
(0020695)
Pol M   
2019-05-26 14:54   
(edited on: 2019-05-26 16:54)
Interestingly, doomseeker always crashes on exit.
The backtrace doesn't point to any location on our source code...

#0 0x000014ac1a59e6ae in QNetworkConfiguration::~QNetworkConfiguration () from /usr/local/lib/qt5/./libQt5Network.so.2.2
#1 0x000014ac1a5a3590 in QThreadStorage<QSharedNetworkSessionManager*>::deleteData () from /usr/local/lib/qt5/./libQt5Network.so.2.2
0000002 0x000014ab9149c966 in QThreadStorageData::finish () from /usr/local/lib/qt5/./libQt5Core.so.2.2
0000003 0x000014ab9168efb8 in QCoreApplicationPrivate::cleanupThreadData () from /usr/local/lib/qt5/./libQt5Core.so.2.2
0000004 0x000014ac3db351d3 in QGuiApplicationPrivate::~QGuiApplicationPrivate () from /usr/local/lib/qt5/./libQt5Gui.so.2.2
0000005 0x000014aba161a69f in QApplicationPrivate::~QApplicationPrivate () from /usr/local/lib/qt5/./libQt5Widgets.so.2.2
0000006 0x000014ab916c0f9d in QObject::~QObject () from /usr/local/lib/qt5/./libQt5Core.so.2.2
0000007 0x000014aba161c3fe in QApplication::~QApplication () from /usr/local/lib/qt5/./libQt5Widgets.so.2.2

Maybe it has something to do with how Qt works under OpenBSD (aka not our fault)? Idk.

(0020738)
Pol M   
2019-06-09 21:03   
I'm cross-posting relevant information related to SRB2, this comes from this pr:

Well, working on OpenBSD without the srb2 thing is a pain because 1/5 of the tries end up with a crash caused by srb2 (heck, pretty much all runtime crashes come from that, except for the exit crash). I decided to check for sizes across multiple platforms, and all of them have a header size of 84, and the final header has a size of 0. For some reason, in OpenBSD it has random gigantic sizes (1919905893, 1802265971, 1297293506, 1802265971 for example (in decimal)). All the instances encountered were over 0x0FFFFFFF with plenty of room, and while the header size may vary in the future, it won’t even get close to that.

The rest of the values (id, type, room) also get mangled: 0x35303239, 0x00000000 and 0x875b5553 vs the expected 0x32330000, 0x10000000, 0x000000ce, but I can’t tell how useful this info is.

[...]

I’ve been able to compile and run SRB2 without problems, and I can play online games. So, while probably OpenBSD is not supported, it can be used to play SRB2.
(0020747)
WubTheCaptain   
2019-06-12 00:47   
Quote from Pol M
I'm cross-posting relevant information related to SRB2, this comes from this pr


Tracked as 0003660. Just FYI, since Zalewa was requesting to comment about it to this issue.
(0020860)
Pol M   
2019-06-30 15:31   
OpenBSD no longer is capable of running doomseeker, crashing in an Abort trap. Core dump seems to point that the issue is of:

#1 0x00000ab11fa43a92 in __initdb (shadow=0) at /usr/src/lib/libc/gen/getpwent.c:983
0000002 0x00000ab11fa4484d in getpwuid_internal (uid=1000, pw=0x0, buf=0x0, buflen=0, pwretp=0x7f7ffffc3508, shadow=false, reentrant=2) at /usr/src/lib/libc/gen/getpwent.c:854
0000003 0x00000ab11fa44aa8 in getpwuid (uid=Variable "uid" is not available.
) at /usr/src/lib/libc/gen/getpwent.c:903
0000004 0x00000ab0f1fb36a5 in QFileSystemEngine::resolveUserName () from /usr/local/lib/qt5/./libQt5Core.so.2.2
0000005 0x00000ab0f1fbacb8 in QStandardPaths::writableLocation () from /usr/local/lib/qt5/./libQt5Core.so.2.2
0000006 0x00000ab17fbfa7f1 in _ZL12iconTempPathv () from /usr/local/lib/qt5/libQt5XcbQpa.so.1.2
0000007 0x00000ab17fbfa73e in __cxx_global_var_init.2 () from /usr/local/lib/qt5/libQt5XcbQpa.so.1.2
0000008 0x00000ab17fbfd011 in _GLOBAL__sub_I_qdbustrayicon.cpp () from /usr/local/lib/qt5/libQt5XcbQpa.so.1.2
0000009 0x00000ab17fb5e0e9 in _do_init () from /usr/local/lib/qt5/libQt5XcbQpa.so.1.2
0000010 0x00000ab17fc5d9a9 in _init () from /usr/local/lib/qt5/libQt5XcbQpa.so.1.2
0000011 0x00000ab17fc5d9a0 in qCeil () from /usr/local/lib/qt5/libQt5XcbQpa.so.1.2
0000012 0x00000ab0e80f1959 in _dl_call_init_recurse (object=0xab13bc2e000, initfirst=0) at /usr/src/libexec/ld.so/loader.c:771
Previous frame inner to this frame (corrupt stack?)

Aka, I'd say it's the qt library being broken. OpenBSD 6.5