Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.

Bug 1678510

Summary: sddm-helper creates weird directories inside my home directory at each login
Product: [Fedora] Fedora Reporter: Andrew Zabolotny <anpaza>
Component: sddmAssignee: Martin Bříza <m>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 29CC: jgrulich, kde-sig, me, m, pierluigi.fiorini, rdieter, sdatskevich, vladsol2009
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: sddm-0.18.0-4.fc29 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-04-15 17:43:37 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Andrew Zabolotny 2019-02-19 00:09:25 UTC
Description of problem:
After each login I get a new subdirectory created inside my home directory.
I mean such things:
drwx------.  3 alice alice  4096 фев 19 02:51 'p�'$'\021''�U'/

Inside there's an empty .cache directory and inside .cache there's an empty .xsession-errors.

Version-Release number of selected component (if applicable):
sddm-0.18.0-1.fc29.x86_64

How reproducible:
Always

Steps to Reproduce:
1. Network install Fedora 29 with KDE desktop from USB stick
2. Create a user account
3. Login and look inside ~

Actual results:
There's a just-created directory with random chars in its name.

Additional info:
I enabled audit and tracked the bug down to sddm-helper creating these directories:

type=PROCTITLE msg=audit(19.02.2019 02:51:02.381:251) : proctitle=/usr/libexec/sddm-helper --socket /tmp/sddm-autheeb5bb4c-d6a5-4448-89be-ca0c1883c1e8 --id 1 --start /usr/bin/startkde --user alitype=PATH msg=audit(19.02.2019 02:51:02.381:251) : item=1 name=/home/alice/p�\021�U inode=11272248 dev=fd:03 mode=dir,700 ouid=alice ogid=alice rdev=00:00 obj=system_u:object_r:user_home_t:s0 nametype=CREATE cap_fp=none cap_fi=none cap_fe=0 cap_fver=0
type=PATH msg=audit(19.02.2019 02:51:02.381:251) : item=0 name=/home/alice/ inode=112
72193 dev=fd:03 mode=dir,700 ouid=alice ogid=alice rdev=00:00 obj=unconfined_u:object_r:user_home_dir_t:s0 nametype=PARENT cap_fp=none cap_fi=none cap_fe=0 cap_fver=0
type=CWD msg=audit(19.02.2019 02:51:02.381:251) : cwd=/home/alice
type=SYSCALL msg=audit(19.02.2019 02:51:02.381:251) : arch=x86_64 syscall=mkdir success=yes exit=0 a0=0x55da11a466b8 a1=0777 a2=0x15 a3=0x0 items=2 ppid=1727 pid=1752 auid=alice uid=alice gid=alice euid=alice suid=alice fsuid=alice egid=alice sgid=alice fsgid=alice tty=(none) ses=4 comm=sddm-helper exe=/usr/libexec/sddm-helper subj=system_u:system_r:xdm_t:s0-s0:c0.c1023 key=(null)

---

There's a very similar bug #1665740 but they blame abrt there. I have erased abrt and his countless minions off the face of my OS and I still get those directories created at (almost) every login. So abrt is not the cause.

Comment 1 Vladislav Solovei 2019-03-01 10:29:20 UTC
Fedora 29 x86_64, updated.
I have the same problem.


type=AVC msg=audit(1551435502.201:259): avc:  denied  { write } for  pid=1800 comm="sddm-helper" path="/home/username/3V/.cache/xsession-errors" dev="dm-1" ino=202884691 scontext=system_u:system_r:xdm_t:s0-s0:c0.c1023 tcontext=system_u:object_r:user_home_t:s0 tclass=file permissive=0

- in this case sddm-helper tries to create *V folder. The first symbol is always different.
On example:
�U
PV
3V

Comment 2 Andrew Zabolotny 2019-03-09 08:23:45 UTC
Looks like the weird name is somehow related to a) login name and b) locale.
As far as I understand both me and Vladislav are using Cyrillic locales.

Comment 3 Vladislav Solovei 2019-03-09 14:26:44 UTC
No, that's not a locale issue.
I'm using en_US.UTF-8.

Occasionally, sddm_helper gets a corrupted passwd structure from getpwnam_r() in function UserSession::setupChildProcess()
Why? I don't know.
Regardless of username, locale, etc...
Different CPUs?

Comment 4 Vladislav Solovei 2019-03-09 16:59:33 UTC
So, i guess, the reason ins line 233 in src/helper/UserSession.cpp:
free(buffer)

C code to demonstrate this behavior https://pastebin.com/fpWyg78c
My output:
before: /home/zend
after: J

Comment 5 Fedora Update System 2019-03-15 20:18:46 UTC
sddm-0.18.0-4.fc29 has been submitted as an update to Fedora 29. https://bodhi.fedoraproject.org/updates/FEDORA-2019-96c964d319

Comment 6 Fedora Update System 2019-04-15 17:43:37 UTC
sddm-0.18.0-4.fc29 has been pushed to the Fedora 29 stable repository. If problems still persist, please make note of it in this bug report.