Bug 406138 - yast crashes in second stage in kerberos configuration (CWMTab - nil - YCPNull - SCR)
Summary: yast crashes in second stage in kerberos configuration (CWMTab - nil - YCPNul...
Status: RESOLVED FIXED
Alias: None
Product: openSUSE 11.0
Classification: openSUSE
Component: Basesystem (show other bugs)
Version: Final
Hardware: PowerPC Linux
: P2 - High : Major (vote)
Target Milestone: ---
Assignee: Martin Vidner
QA Contact: E-mail List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-07-03 12:42 UTC by Olaf Hering
Modified: 2008-10-14 15:13 UTC (History)
0 users

See Also:
Found By: Development
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments
bug406138.tar.bz2 (494.22 KB, application/x-bzip)
2008-07-03 12:46 UTC, Olaf Hering
Details
crash-406138.ycp (221 bytes, text/plain)
2008-07-08 13:46 UTC, Martin Vidner
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Olaf Hering 2008-07-03 12:42:35 UTC
If the auth method, chosen in first stage, is nis + kerberos, yast will crash during ntp configuration.

I selected advanced settings, enabled krb for ssh
then ntp configuration, start ntp at boot, and configure via dhcp. in advanced tab, open port in firewall.

I forgot something, so I selected ntp config again.
But the button did not react.
So I left this window, and selected advanced settings again.

Now yast crashes.
Comment 1 Olaf Hering 2008-07-03 12:46:27 UTC
Created attachment 225805 [details]
bug406138.tar.bz2
Comment 2 Michal Zugec 2008-07-06 13:13:00 UTC
Probably duplicate of #399645. Does it helps if you after network proposal do "rcnetwork restart" or if you use fixed package from that bugreport?
Comment 3 Olaf Hering 2008-07-08 11:00:38 UTC
the yast2-network package from bug #399645 does not fix the crash in the ntp client configuration.
Comment 4 Michal Zugec 2008-07-08 11:27:26 UTC
Martin, crash is in NtpClient module
Comment 5 Martin Vidner 2008-07-08 13:46:57 UTC
Created attachment 226486 [details]
crash-406138.ycp

Nice catch.

The attached script reproduces the crash. When an SCR call gets an expression evaluating to nil, it does not use YCPVoid as it normally would if the nil value came from a variable, but uses YCPNull instead. That in turn confuses at least the ini agent and it crashes.

TODO: find out why we get nil in the first place.
Comment 6 Martin Vidner 2008-07-08 17:13:26 UTC
An intermediate cause is manifested in the log as THROW: No widget with ID "config_dhcp". That results in the nil value which then causes the crash.
Why there is no config_dhcp is less clear. It looks like a problem with CWM or CWMTab which is used both in kerberos-client and ntp-client. Running ntp-client alone seems to avoid the bug.
Comment 7 Martin Vidner 2008-07-10 17:12:12 UTC
As I suspected, the problem was in nested calls to CWMTab. I added a stack to fix that in yast2-2.17.7. (As a side effect, bug 134386 will resurface but it can be easily fixed.)

TODO: also fix comment 5.
Comment 8 Martin Vidner 2008-07-23 16:56:42 UTC
Prioritizing: a crash, albeit at rare circumstances -> P2
Comment 9 Martin Vidner 2008-10-14 15:13:31 UTC
YCPNull and YCPVoid are used quite liberally to mean nil in much of the core code :-(
A reasonable place to fix it here is to let the SCR builtins (which are few) deal with the situation and convert YCPNull to YCPVoid there.

The fix is in yast2-core-2.17.18, I have tested that it fixes the script in comment 5.