Bug 1702776 - [abrt] cjdns: Except__throw(): cjdroute killed by SIGABRT
Summary: [abrt] cjdns: Except__throw(): cjdroute killed by SIGABRT
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: cjdns
Version: 30
Hardware: x86_64
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Stuart D Gathman
QA Contact: Fedora Extras Quality Assurance
URL: https://retrace.fedoraproject.org/faf...
Whiteboard: abrt_hash:529498c6bae76ab5af850674566...
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2019-04-24 18:00 UTC by Vedran Miletić
Modified: 2019-05-17 01:04 UTC (History)
1 user (show)

Fixed In Version: cjdns-20.3-2.fc30
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2019-05-17 01:04:24 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
File: backtrace (7.42 KB, text/plain)
2019-04-24 18:00 UTC, Vedran Miletić
no flags Details
File: cgroup (283 bytes, text/plain)
2019-04-24 18:00 UTC, Vedran Miletić
no flags Details
File: core_backtrace (1.16 KB, text/plain)
2019-04-24 18:00 UTC, Vedran Miletić
no flags Details
File: cpuinfo (1.55 KB, text/plain)
2019-04-24 18:00 UTC, Vedran Miletić
no flags Details
File: dso_list (385 bytes, text/plain)
2019-04-24 18:00 UTC, Vedran Miletić
no flags Details
File: environ (157 bytes, text/plain)
2019-04-24 18:00 UTC, Vedran Miletić
no flags Details
File: limits (1.29 KB, text/plain)
2019-04-24 18:00 UTC, Vedran Miletić
no flags Details
File: maps (3.10 KB, text/plain)
2019-04-24 18:00 UTC, Vedran Miletić
no flags Details
File: mountinfo (4.52 KB, text/plain)
2019-04-24 18:00 UTC, Vedran Miletić
no flags Details
File: open_fds (660 bytes, text/plain)
2019-04-24 18:00 UTC, Vedran Miletić
no flags Details
File: proc_pid_status (1.32 KB, text/plain)
2019-04-24 18:00 UTC, Vedran Miletić
no flags Details

Description Vedran Miletić 2019-04-24 18:00:41 UTC
Version-Release number of selected component:
cjdns-20.2-6.fc30

Additional info:
reporter:       libreport-2.10.0
backtrace_rating: 4
cmdline:        /usr/sbin/cjdroute --nobg
crash_function: Except__throw
executable:     /usr/sbin/cjdroute
journald_cursor: s=bf040accd27b466196734b066ee0b43a;i=b2ff1;b=85c24c0d8c32497e937b3b6e93de217c;m=2936507d6;t=58748b066a6aa;x=dcc3baabd1e63da8
kernel:         5.0.9-300.fc30.x86_64
rootdir:        /
runlevel:       N 5
type:           CCpp
uid:            0

Truncated backtrace:
Thread no. 1 (1 frames)
 #2 Except__throw at exception/Except.c:48

Comment 1 Vedran Miletić 2019-04-24 18:00:44 UTC
Created attachment 1558323 [details]
File: backtrace

Comment 2 Vedran Miletić 2019-04-24 18:00:45 UTC
Created attachment 1558324 [details]
File: cgroup

Comment 3 Vedran Miletić 2019-04-24 18:00:46 UTC
Created attachment 1558325 [details]
File: core_backtrace

Comment 4 Vedran Miletić 2019-04-24 18:00:47 UTC
Created attachment 1558326 [details]
File: cpuinfo

Comment 5 Vedran Miletić 2019-04-24 18:00:48 UTC
Created attachment 1558327 [details]
File: dso_list

Comment 6 Vedran Miletić 2019-04-24 18:00:49 UTC
Created attachment 1558328 [details]
File: environ

Comment 7 Vedran Miletić 2019-04-24 18:00:50 UTC
Created attachment 1558329 [details]
File: limits

Comment 8 Vedran Miletić 2019-04-24 18:00:51 UTC
Created attachment 1558330 [details]
File: maps

Comment 9 Vedran Miletić 2019-04-24 18:00:53 UTC
Created attachment 1558331 [details]
File: mountinfo

Comment 10 Vedran Miletić 2019-04-24 18:00:54 UTC
Created attachment 1558332 [details]
File: open_fds

Comment 11 Vedran Miletić 2019-04-24 18:00:55 UTC
Created attachment 1558333 [details]
File: proc_pid_status

Comment 12 Stuart D Gathman 2019-04-24 18:45:11 UTC
I got this 3 days ago in a VM, but haven't seen it since updating.  I see you have the latest kernel - is everything else updated?

Comment 13 Vedran Miletić 2019-04-26 00:17:34 UTC
Yes. I'll check if it happens again.

Comment 14 Vedran Miletić 2019-04-29 17:12:18 UTC
(In reply to Stuart D Gathman from comment #12)
> I got this 3 days ago in a VM, but haven't seen it since updating.  I see
> you have the latest kernel - is everything else updated?

It does still happen.

Comment 15 Stuart D Gathman 2019-05-03 03:24:32 UTC
Ok, I updated a system from f28 -> f30, and then I get an abort.  When running cjdroute as root:

/usr/sbin/cjdroute --nobg </etc/cjdroute.conf

I get: Can't have writable permission to pipe directory.

So some permissions are screwed up.  

I'm not sure how I will change the package yet, but to get it working I added "pipe":"/var/run" to /etc/cjdroute.conf
Now cjdroute will run with setenforce 0.  To fix the selinux policy, I added this custom policy:

module mycjdns 1.0;

require {
	type cjdns_t;
	type var_run_t;
	class dir { add_name remove_name write };
	class sock_file { create write };
}

#============= cjdns_t ==============

allow cjdns_t var_run_t:dir { add_name write remove_name };
allow cjdns_t var_run_t:sock_file { create write };

The existing policy has:

allow cjdns_t tmp_t:sock_file { write create unlink };

I think making the default pipe dir /var/run is the correct fix.  I have no idea why the access check works on some f30 systems.

Comment 16 Stuart D Gathman 2019-05-03 03:40:09 UTC
Strangely, it seems the default pipe dir was *not* "/tmp".  Scratch the above, add "pipe":"/tmp" (even though that *should* be the default) to /etc/cjdroute.conf and see if that fixes your problem.  (No need for the selinux module)

Comment 17 Stuart D Gathman 2019-05-03 16:00:04 UTC
After more debugging, the problem is that f30 introduces new levels of optimization with gcc-9.0 (up from gcc-8.3 in f29).  And with that comes new bugs from code that is undefined in strict C language interpretation.

The problem is indeed that the String constant for the default pipe dir is optimized away before it is used (legally, since it is created in parens).  So the directory name is garbage. 

The correct workaround is simply to explicitly define "pipe":"/tmp" in /etc/cjdroute.conf

Comment 18 Fedora Update System 2019-05-03 20:07:23 UTC
cjdns-20.2-7.fc30 has been submitted as an update to Fedora 30. https://bodhi.fedoraproject.org/updates/FEDORA-2019-3c7d3c2723

Comment 19 Fedora Update System 2019-05-04 01:58:01 UTC
cjdns-20.2-7.fc30 has been pushed to the Fedora 30 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-3c7d3c2723

Comment 20 Fedora Update System 2019-05-08 23:51:24 UTC
cjdns-20.3-2.fc30 has been submitted as an update to Fedora 30. https://bodhi.fedoraproject.org/updates/FEDORA-2019-323ad7f0a2

Comment 21 Fedora Update System 2019-05-09 00:32:30 UTC
cjdns-20.2-7.fc30 has been submitted as an update to Fedora 30. https://bodhi.fedoraproject.org/updates/FEDORA-2019-3c7d3c2723

Comment 22 Fedora Update System 2019-05-09 02:18:23 UTC
cjdns-20.3-2.fc30 has been pushed to the Fedora 30 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-323ad7f0a2

Comment 23 Fedora Update System 2019-05-17 01:04:24 UTC
cjdns-20.3-2.fc30 has been pushed to the Fedora 30 stable repository. If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.