Created attachment 144677 [details] comms/trustedqsl build log Two major issues: * distfiles' checksum do not match. * tqsl does not run and crashes with bus error or segmentation fault. See the attachment files for the build and gdb backtrace log.
Created attachment 144678 [details] tqsl gdb backtrace log
I've tried to change the following points and so far the command line tools under src/ (formerly tqsllib CLI tools) are working. I'm not familiar with the C++ class of dungeons, but I think using the std::shared_ptr on XMLelement no longer works. * Enable USE_GCC * Remove all patches regarding std::shared_ptr See the diffs of the following two GitHub repo tags: https://github.com/jj1bdx/trustedqsl-private-port/tree/2.0.2-r357863 https://github.com/jj1bdx/trustedqsl-private-port/tree/2.0.2-jj1bdx-CLI-tools
I'll take this. They have a braindead tendency to re-roll their distfiles at random and haven't responded to my emails on the subject.
A commit references this bug: Author: shurd Date: Wed Jul 16 21:07:19 UTC 2014 New revision: 362112 URL: http://svnweb.freebsd.org/changeset/ports/362112 Log: Copy the version matching the port to my public_distfiles and set MASTER_SITES to local for now. Will fix this soon. PR: ports/191871 Changes: head/comms/trustedqsl/Makefile
Created attachment 144737 [details] This is an experimental meta-patch for the shurd's patch of XMLelement Actually this is a patch for patches under directory files/. I am a C++ beginner and I don't really understand how shared_ptr should be handled, but this resolved the build issues of command line tools under src/. I am sure that I am doing a wrong thing because std::make_shared will create a new object rather than referring to a raw pointer. I don't know how to handle this, but I will submit this anyway FYI. I still cannot make tqsl running, though now it doesn't crash but hang. I hope shurd will solve this issue soon.
Created attachment 144738 [details] Patches for CLI tools, src/converter.cpp and src/gen_crq.cpp This is an enhancement bugfix patch for the CLI tools in src/, namely converter.cpp and gen_crq.cpp.
Can you provide sample usages you would like me to test in the updated port? I've never used the command-line stuff, so some examples of what should work would be very helpful.
Did you originally install from the package or from the port?
(In reply to Stephen Hurd from comment #8) > Did you originally install from the package or from the port? From the comm/trustedqsl port.
(In reply to Stephen Hurd from comment #7) > Can you provide sample usages you would like me to test in the updated port? > I've never used the command-line stuff, so some examples of what should work > would be very helpful. I've never used `tqsl` from the command line either yet. The sample usage here is: converter a-log-file.adi to obtain the converter.tq7 as the result, then make it a .tq8 with gzip -c -9 converter.tq7 > a-log-file.tq8
Created attachment 144750 [details] Quick and dirty work-around Could you try the attached dirty hack? This one basically adds a memory leak to prevent early object destruction and *seems* to at least fix tqsl here. If this works, at least I'll know what the problem is.
(In reply to Stephen Hurd from comment #11) > Created attachment 144750 [details] > Quick and dirty work-around > > Could you try the attached dirty hack? This one basically adds a memory > leak to prevent early object destruction and *seems* to at least fix tqsl > here. If this works, at least I'll know what the problem is. It still fails and causes segmentation fault. I'll attach the gdb crash log as tqsl-stillfail-gdb.txt.
Created attachment 144752 [details] tqsl crash log after shurd's patch
Created attachment 144763 [details] Updated port with better shaed_ptr usage. This should work better, I've dropped the extra wrapper class and am using shared_ptr directly now. Please test.
Created attachment 144764 [details] tqsl failure log (gdb backtrace) after the patch of 2.0.2_1 The command line tools now work OK, but tqsl has got crashed again. The failure log suggests creation of ~/.tqsl/cert_status.xml has been failed.
Now 2.0.3 is available: http://sourceforge.net/projects/trustedqsl/files/TrustedQSL/v2.0.3/ FYI
Comment on attachment 144764 [details] tqsl failure log (gdb backtrace) after the patch of 2.0.2_1 The 2.0.3 is likely the RC for the next release. I'm not chasing RCs again until I manage to actually contact the authours. As for the tqsl crash, I should be able to look at it when I'm in front of my system at home (about another seven hours). I expect it's a straightforward fix now.
Created attachment 144768 [details] Patch for openssl_cert.cpp to fix tqsl crash I revised the openssl_cert.cpp to explicitly define the shared pointers in tqsl_setCertificateStatus(). See also https://github.com/jj1bdx/trustedqsl-private-port/commit/3b4c8aee8dc2dddaf85315af3a37bbebd2fac13b
I've made a fix to openssl_cert.cpp. Please test this. BTW I have no objection on chasing strategy of the upstream change. (In reply to Stephen Hurd from comment #17) > Comment on attachment 144764 [details] > tqsl failure log (gdb backtrace) after the patch of 2.0.2_1 > > The 2.0.3 is likely the RC for the next release. I'm not chasing RCs again > until I manage to actually contact the authours. > > As for the tqsl crash, I should be able to look at it when I'm in front of > my system at home (about another seven hours). I expect it's a > straightforward fix now.
Comment on attachment 144768 [details] Patch for openssl_cert.cpp to fix tqsl crash This patch is obsolete. Use the new one.
Created attachment 144769 [details] Patch for openssl_cert.cpp to fix tqsl crash This is a revised patch for openssl_cert.cpp to fix the usage of the shared_ptr in tqsl_setCertificateStatus().
(In reply to Kenji Rikitake from comment #18) > Created attachment 144768 [details] > Patch for openssl_cert.cpp to fix tqsl crash > > I revised the openssl_cert.cpp to explicitly define the shared pointers in > tqsl_setCertificateStatus(). > > See also > https://github.com/jj1bdx/trustedqsl-private-port/commit/ > 3b4c8aee8dc2dddaf85315af3a37bbebd2fac13b See also updating diff at https://github.com/jj1bdx/trustedqsl-private-port/commit/26a88f70a48f54fbf1ea9dec08efe6b68ca27cb0
Created attachment 144778 [details] Finally, a working fix (I think) After a number of long trips down dead ends, I think I've finally gotten it all set. Please test this, I'm running it on Redports overnight, and will hopefully be able to commit it tomorrow. Thanks for all the help!
(In reply to Stephen Hurd from comment #23) > Created attachment 144778 [details] > Finally, a working fix (I think) > > After a number of long trips down dead ends, I think I've finally gotten it > all set. > > Please test this, I'm running it on Redports overnight, and will hopefully > be able to commit it tomorrow. > > Thanks for all the help! Looks OK to me. Many thanks!
Created attachment 144784 [details] TrustedQSL 2.0.3 port It looks like the 2.0.3 release is a "real" release and not an RC. Since it has the following changelist description, it's worth chasing: Fix defect that doesn't allow adding station locations if only a single callsign certificate is installed.
A commit references this bug: Author: shurd Date: Fri Jul 18 21:42:34 UTC 2014 New revision: 362230 URL: http://svnweb.freebsd.org/changeset/ports/362230 Log: Fix TQSL issues when build with Clang (previous patches were not enough) Update to 2.0.3 Add options for the extra (deprecated) command-line utilities From ChangeLog.txt: - Fix defect that doesn't allow adding station locations if only a single callsign certificate is installed. Thanks Kenji! PR: ports/191871 Changes: head/comms/trustedqsl/Makefile head/comms/trustedqsl/distinfo head/comms/trustedqsl/files/patch-src_converter.cpp head/comms/trustedqsl/files/patch-src_gen_crq.cpp head/comms/trustedqsl/files/patch-src_location.cpp head/comms/trustedqsl/files/patch-src_openssl_cert.cpp head/comms/trustedqsl/files/patch-src_xml.cpp head/comms/trustedqsl/files/patch-src_xml.h head/comms/trustedqsl/pkg-plist
Confimed 2.0.3 worked OK. Many thanks Stephen! (In reply to commit-hook from comment #26) > A commit references this bug: > > Author: shurd > Date: Fri Jul 18 21:42:34 UTC 2014 > New revision: 362230 > URL: http://svnweb.freebsd.org/changeset/ports/362230 > > Log: > Fix TQSL issues when build with Clang (previous patches were not enough) > Update to 2.0.3 > Add options for the extra (deprecated) command-line utilities > > From ChangeLog.txt: > - Fix defect that doesn't allow adding station locations if only a single > callsign certificate is installed. > > Thanks Kenji! > > PR: ports/191871 > > Changes: > head/comms/trustedqsl/Makefile > head/comms/trustedqsl/distinfo > head/comms/trustedqsl/files/patch-src_converter.cpp > head/comms/trustedqsl/files/patch-src_gen_crq.cpp > head/comms/trustedqsl/files/patch-src_location.cpp > head/comms/trustedqsl/files/patch-src_openssl_cert.cpp > head/comms/trustedqsl/files/patch-src_xml.cpp > head/comms/trustedqsl/files/patch-src_xml.h > head/comms/trustedqsl/pkg-plist
Committed and tested.