Bug 988203 - NIS server returning 0 (YP_FALSE) instead of -1 (YP_NOMAP) for yp_first/yp_next requests
Summary: NIS server returning 0 (YP_FALSE) instead of -1 (YP_NOMAP) for yp_first/yp_ne...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: ypserv
Version: 6.5
Hardware: All
OS: Linux
medium
medium
Target Milestone: rc
: ---
Assignee: Matej Mužila
QA Contact: Tomas Dolezal
Jiri Herrmann
URL:
Whiteboard:
Depends On:
Blocks: 1075802 1172231 1269927
TreeView+ depends on / blocked
 
Reported: 2013-07-25 05:49 UTC by Honza Horak
Modified: 2019-10-10 09:09 UTC (History)
5 users (show)

Fixed In Version: ypserv-2.19-31.el6
Doc Type: Bug Fix
Doc Text:
*ypserv* now correctly reports a non-existent map The *ypserv* service previously incorrectly returned an `Internal NIS error` error message when a NIS client asked for a non-existent map using the *yp_first* or *yp_next* system calls. Now, *ypserv* correctly returns the `No such map in server's domain` error message in this scenario.
Clone Of:
Environment:
Last Closed: 2016-05-10 20:34:02 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
Reproducer for yp_first and yp_next RPC calls (1005 bytes, text/plain)
2013-07-25 05:52 UTC, Honza Horak
no flags Details
Patch that uses correct error handling (3.64 KB, patch)
2013-07-25 05:54 UTC, Honza Horak
no flags Details | Diff


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2016:0793 0 normal SHIPPED_LIVE ypserv bug fix update 2016-05-10 22:37:06 UTC

Description Honza Horak 2013-07-25 05:49:33 UTC
Description of problem:
This is similar to bug #790812, which got incomplete fix. When NIS client asks for non-existing map using yp_first/yp_next RPC calls, it gets 0 (YP_FALSE) instead of -1 (YP_NOMAP) in the YP respond from server, which causes problems on Solaris/Linux deployments.

We need to fix *all* calls the same as yp_all RPC call has been fixed as a part of bug #790812.

Version-Release number of selected component (if applicable):
ypserv-2.19-10.el5_9.1

How reproducible:
every-time

Steps to Reproduce:
1. See https://bugzilla.redhat.com/show_bug.cgi?id=783198#c3
and configure NIS according the steps there.
2. Download reproducer.c (will be attached)
3. gcc -o reproducer reproducer.c -lnsl 
4. ./reproducer yourdomainname nonexistingmap
5. echo $?

Actual results:
WARNING: Internal NIS error (Map nonexistingmap)
6

Expected results:
WARNING: No such map in server's domain (Map nonexistingmap)
4

Comment 1 Honza Horak 2013-07-25 05:52:33 UTC
Created attachment 778065 [details]
Reproducer for yp_first and yp_next RPC calls

See comment #0 for instructions how the reproducer should be used.

Comment 2 Honza Horak 2013-07-25 05:54:37 UTC
Created attachment 778066 [details]
Patch that uses correct error handling

This patch is a back-port of error handling from ypserv-2.29.

Comment 12 errata-xmlrpc 2016-05-10 20:34:02 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHBA-2016-0793.html


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