Commit Graph

320 Commits

Author SHA1 Message Date
Ulrich Drepper e1b370832c [BZ #3465]
* sunrpc/clnt_raw.c: Minimal message improvements.
	* sunrpc/pm_getmaps.c: Likewise.
	* nis/nss_nisplus/nisplus-publickey.c: Likewise.
	* nis/nis_print_group_entry.c: Likewise.
	* locale/programs/repertoire.c: Likewise.
	* locale/programs/charmap.c: Likewise.
	* malloc/memusage.sh: Likewise.
	* elf/dl-deps.c: Likewise.
	* locale/programs/ld-collate.c: Likewise.
	* libio/vswprintf.c: Likewise.
	* malloc/memusagestat.c: Likewise.
	* sunrpc/auth_unix.c: Likewise.
	* sunrpc/rpc_main.c: Likewise.
	* nscd/cache.c: Likewise.
	* locale/programs/repertoire.c: Unify output messages.
	* locale/programs/charmap.c: Likewise.
	* locale/programs/ld-ctype.c: Likewise.
	* locale/programs/ld-monetary.c: Likewise.
	* locale/programs/ld-numeric.c: Likewise.
	* locale/programs/ld-time.c: Likewise.
	* elf/ldconfig.c: Likewise.
	* nscd/selinux.c: Likewise.
	* elf/cache.c: Likewise.
	Patch mostly by Benno Schulenberg <bensberg@justemail.net>.
2006-11-10 20:55:22 +00:00
Ulrich Drepper 6c7e1cf59e * malloc/malloc.c (_int_malloc): Remove unused any_larger variable.
* nis/nis_defaults.c (__nis_default_access): Don't call getenv twice.

	* nis/nis_subr.c (nis_getnames): Use __secure_getenv instead of getenv.
	* sysdeps/generic/unsecvars.h: Add NIS_PATH.
2006-10-11 16:29:13 +00:00
Ulrich Drepper 2a6ee54934 * nis/nis_subr.c (nis_getnames): Add trailing dot to NIS_PATH
components which lack them.

	* nis/nis_subr.c (nis_getnames): Make sure that we always return
	at least one entry consisting of the parameter concatenated with
	the domain.
2006-10-11 01:28:34 +00:00
Ulrich Drepper ef4ae86af0 (nis_getnames): Make sure that we always return at least one entry consisting of the parameter concatenated with the domain. 2006-10-11 01:22:51 +00:00
Ulrich Drepper 52c24bc31e * libio/Banner: Likewise. 2006-10-06 20:39:03 +00:00
Ulrich Drepper 4df92d57e8 * nis/nis_table.c (nis_list): If __follow_path fails in the new
code, make sure the nis_freeresult call doesn't crash and that the
	result is reported correctly.
2006-10-06 20:34:24 +00:00
Ulrich Drepper 6836157252 * nis/nis_table.c (nis_list): Handle FOLLOW_PATH | ALL_RESULTS
when callback is NULL.

	* nis/Versions (libnss_nisplus): Add
	_nss_nisplus_initgroups_dyn@@GLIBC_PRIVATE.
	* nis/Makefile (libnss_nisplus-routines): Add nisplus-initgroups.
	* nis/nss_nisplus/nisplus-grp.c (tablename_val, tablename_len,
	_nss_create_tablename): Rename to...
	(grp_tablename_val, grp_tablename_len, _nss_grp_create_tablename):
	... these.  No longer static.
	(internal_setgrent): Adjust users.
	(_nss_nisplus_getgrnam_r, _nss_nisplus_getgrgid_r): Likewise.
	Don't use locking around _nss_grp_create_tablename call.
	* nis/nss_nisplus/nisplus-initgroups.c: New file.
2006-10-06 17:49:27 +00:00
Ulrich Drepper ed3691bab2 * nis/nss_nis/nis-service.c (internal_nis_getservent_r): . If map
is empty simply return and use next service.
	* nis/nss_nis/nis-rpc.c (internal_nis_getrpcent_r): Likewise.
2006-08-19 18:37:10 +00:00
Ulrich Drepper d0ccde2540 * nis/nis_xdr.c: Avoid some function calls. 2006-08-08 00:39:32 +00:00
Ulrich Drepper 13a0293d5a 2006-08-07 Jakub Jelinek <jakub@redhat.com>
Ulrich Drepper  <drepper@redhat.com>

	* nis/nis_call.c (rec_dirsearch) [case LOWER_NAME]: Don't take
	short cut if only one name component is stripped away.
2006-08-07 17:40:53 +00:00
Ulrich Drepper bd1ebae0eb * nis/nis_call.c: Minor cleanups throughout.
(rec_dirsearch) [HIGHER_NAME]: Correctly size ndomain array.
	(first_shoot): Add search_parent_first parameter.  Only if it is set
	search parent server first.
	If directory for table found through cold start cache is not the same
	as referenced in the cache, don't use it.
	(__nisfind_server): Take additional parameter.  Pass it on to
	first_shoot.
	(__prepare_niscall): Adjust __nisfind_server call.
	* nis/rpcsvc/nislib.h: Adjust __nisfind_server prototype.
	* nis/nis_table.c: Adjust __nisfind_server call.
	* nis/nis_lookup.c: Likewise.
	(nis_lookup): Don't loop endlessly if name is reduced to ".".
2006-08-07 16:03:46 +00:00
Ulrich Drepper cb62745abd Avoid unnecessary setXXent calls into the backend NSS module. If backend setXXent call failed, don't have internal_setXXent fail. Just remember this until it is needed. 2006-07-31 23:33:04 +00:00
Ulrich Drepper 02f366b304 * nis/nis_subr.c (nis_getnames): Fix the implementation to better
match what Solaris does.

	* string/bug-envz1.c: New file.
2006-06-16 22:31:04 +00:00
Ulrich Drepper 672d5a63a9 * nis/nis_removemember.c (nis_removemember): Avoid unnecessary
coping.  No need to allocate new array for group members.  Just
	move the pointers and update the size.
2006-05-25 18:31:29 +00:00
Ulrich Drepper 1663b44fbc * nis/nis_addmember.c (nis_addmember): Avoid unnecessary copying.
Avoid memory leak in case realloc fails.  Simplification for
	better code generation.

	Avoid deprecation warning because of libc_hidden_proto for
	inet6_option_alloc.
	* inet/inet6_option.c (option_alloc): Renamed from
	inet6_option_alloc.  Made static.
	(inet6_option_alloc): New a simple wrapper around option_alloc.
	(inet6_option_append): Call option_alloc.
	* include/netinet/in.h: Remove libc_hidden_proto for
	inet6_option_alloc.
2006-05-25 17:16:17 +00:00
Ulrich Drepper 6bcb494a99 * nis/nis_callback.c (__nis_create_callback): Always call xdr_free
for cleanup when cb!=NULL [Coverity CID 233].
2006-05-25 15:52:21 +00:00
Ulrich Drepper 062e719bed * nis/nis_lookup.c (nis_lookup): Use __prepare_niscall instead of
doing it all here.  When server does not know the answer do not
	fail immediate, try parent first.
2006-05-24 06:01:25 +00:00
Ulrich Drepper 2d571cd125 * nis/nis_domain_of_r.c (nis_domain_of_r): Add missing buffer
overflow test.
2006-05-24 04:07:18 +00:00
Ulrich Drepper a17fa6100d * nis/nis_call.c (__prepare_niscall): New function. Split out
from __do_niscall.
	* nis/nis_table.c (__create_ib_request): Renamed from create_ib_request
	and exported.
	(__follow_path): New function.  Split out from nis_list.
	* nis/nis_xdr.h: Add libnsl_hidden_proto for _xdr_ib_request and
	_xdr_nis_result.
	* nis/nis_xdr.c: Add libnsl_hidden_def for _xdr_ib_request and
	_xdr_nis_result.
	* nis/libnsl.h: Declare __prepare_niscall, __create_ib_request,
	and __follow_path.
	* nis/Versions: Export __prepare_niscall, __create_ib_request,
	__follow_path, __do_niscall3, _xdr_ib_request, and _xdr_nis_result
	from libnsl for version GLIBC_PRIVATE.
	* nis/nisplus-parser.h: Remove _nss_nisplus_parse_pwent_chk.
	Remove entry parameter from _nss_nisplus_parse_pwent and
	_nss_nisplus_parse_grent.
	* nis/nss_nisplus/nisplus-parser.c: Likewise.
	* nis/nss_nisplus/nisplus-pwd.c: Remove support for SETENT_BATCH_READ
	again.  Rewrite getpwent handling to not use nis_first_entry and
	nis_next_entry.  Roll out own niscall handling.
	* nis/nss_nisplus/nisplus-grp.c: Likewise.

	* sunrpc/xdr_rec.c: Fix typo in comment.

2006-05-18  David Woodhouse  <dwmw2@redhat.com>
2006-05-20 19:22:30 +00:00
Ulrich Drepper 1d4f062ab8 * nis/nis_call.c (__do_niscall3): Avoid code duplication in error
handling.
2006-05-20 01:04:08 +00:00
Ulrich Drepper 101cc59887 * nis/nis_callback.c (internal_nis_do_callback): Don't use malloc
to allocate memory for my_pollfd.  Better initialization of
	cb_is_running.  Use TEMP_FAILURE_RETRY.
2006-05-20 00:31:17 +00:00
Ulrich Drepper 882bfe73fd * nis/nis_callback.c (__nis_create_callback): Calls to
svcudp_bufcreate and svctcp_create can fail.  Free ->xprt if
	asprintf call fails.
2006-05-19 08:23:43 +00:00
Ulrich Drepper f90de83143 * nis/nis_callback.c (__nis_create_callback): Use asprinf instead
of snprintf+strdup.  Handle OOM.
	* nis/nis_callback.c (__nis_create_callback): Allocate cb and
	cb->serv together.  Remove now obsolete free calls.
	(__nis_destroy_callback): Remove now obsolete free call.
2006-05-18 17:32:19 +00:00
Ulrich Drepper 758b9d7efe * nis/nss_compat/compat-pwd.c (internal_setpwent): If nss_set*ent
returned NSS_STATUS_UNAVAIL, still return NSS_STATUS_SUCCESS.
	* nis/nss_compat/compat-spwd.c (internal_setspent): Likewise.
	* nis/nss_compat/compat-grp.c (internal_setgrent): Likewise.

	* nis/nss_compat/compat-initgroups.c (nss_setgrent, nss_endgrent):
	Removed.
	(init_nss_interface): Remove initialization of these variables.

2006-05-18  Ulrich Drepper  <drepper@redhat.com>

	* nis/nis_call.c (rec_dirsearch): Little optimization: pull
	nis_free_directory forward to avoid duplication.
2006-05-18 14:52:08 +00:00
Ulrich Drepper 5f1724bf03 * nis/nis_call.c (rec_dirsearch): Handle __nis_finddirectory and
rec_dirsearch returning NULL.
	(first_shoot): Handle __nis_finddirectory returning NULL.
	(__nisfind_server): Fix leak when rec_dirsearch returns NULL.
2006-05-18 06:08:02 +00:00
Ulrich Drepper 4b481a15bd * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_master.
* include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_master.

	* nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypbind_resp.
	* include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypbind_resp.

	* nis/nis_xdr.c: Add libnsl_hidden_def for xdr_cback_data.
	* include/rpcsvc/nis_callback.h: Add libnsl_hidden_proto for
	xdr_cback_data.

	* nis/ypupdate_xdr.c: Add libnsl_hidden_def for xdr_ypupdate_args.
	* include/rpcsvc/ypupd.h: Add libnsl_hidden_proto for
	xdr_ypupdate_args.

	* nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_order.
	* include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_order.

	* nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_maplist.
	* include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_maplist.

	* nis/nis_xdr.c: Add libnsl_hidden_def for xdr_obj_p.
	* include/rpcsvc/nis_callback.h: New file.

	* nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_val.
	* include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_val.

	* nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypreq_nokey.
	* include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypreq_nokey.

	* nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypmaplist.
	* include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypmaplist.

	* nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypreq_nokey.
	* include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypreq_nokey.
2006-05-12 02:46:18 +00:00
Ulrich Drepper b1ad49c6fb * nis/ypupdate_xdr.c: Add libnsl_hidden_def for xdr_ypdelete_args.
* include/rpcsvc/ypupd.h: Add libnsl_hidden_proto for
	xdr_ypdelete_args.
2006-05-11 22:41:55 +00:00
Ulrich Drepper cd5f7829d2 * nis/nis_xdr.h: Mark all functions as hidden. Remove
__BEGIN_DECLS and __END_DECLS, the header is not installed.
2006-05-11 20:36:41 +00:00
Ulrich Drepper a51752b6b2 * nis/nis_error.c: Remove table of strings. Use position
independent mechanism.
	* nis/nis_error.h: New file.
2006-05-11 20:29:20 +00:00
Ulrich Drepper d6c159fe15 * nis/nss-nis.h: Mark __yperr2nss_tab and __yperr2nss_count as hidden.
* nis/nss-nisplus.h: Mark __niserr2nss_tab and __niserr2nss_count
	as hidden.
2006-05-10 17:27:03 +00:00
Ulrich Drepper 400cc70af5 * io/ftw.c (open_dir_stream): Return right away if REALLOC fails.
[Coverity CID 229, 230]

	* argp/argp-help.c (hol_entry_help): Handle STATE==NULL in ARG and
	DGETTEXT calls.
	(hol_help): Likewise.  [Coverity CID 226, 227]

	* string/argz-replace.c (__argz_replace): Unconditionally call
	free on SRC.  [Coverity CID 225]

	* nis/nis_creategroup.c (nis_creategroup): No need to duplicate
	the return value of __nis_default_owner and __nis_default_group,
	it has been especially allocated.  [Coverity CID 224]
2006-05-10 06:39:15 +00:00
Ulrich Drepper 51e5926049 * nis/nis_defaults.c (searchXYX): New functions. Used by both
searchgroup and searchowner.  Significantly simplified.
	(__nis_default_owner): Remove duplication.  Do not locally copy the
	string before duplicating it.
	(__nis_default_group): Likewise.

	* nis/nis_lookup.c (nis_lookup): After calling nis_free_directory,
	we must clear the variable before calling __nisfind_server.

	* nis/nis_lookup.c (nis_lookup): Always free memory allocated with
	nis_getnames.  [Coverity CID 223]

	* locale/programs/locfile.c (locfile_read): Use alloca instead of
	xmalloc to allocate local repertoire name.  [Coverity CID 222]

	* iconv/iconv_charmap.c (use_to_charmap): No need to dynamically
	allocate memory for the input to add_bytes.  [Coverity CID 221]

	was allocated here.  [Coverity CID 219, 220]
2006-05-10 02:55:21 +00:00
Ulrich Drepper e7c8359e43 * posix/wordexp.c (w_addword): Free word if realloc fails and it
was allocated here.  [Coverity CID 219]

	* posix/getconf.c (print_all): Free confstr data after printing.
	[Coverity CID 218]

	* sysdeps/posix/getaddrinfo.c (gaih_inet): Free canon string if
	list allocation fails.  [Coverity CID 215]

	* nss/nsswitch.c (__nss_configure_lookup): Fix loop end condition.
	[Coverity CID 213]

	* argp/argp-help.c (hol_entry_cmp): Don't call canon_doc_option if
	string is NULL.  [Coverity CID 212]
	* argp/Makefile: Add rules to build and run bug-argp1.
	* argp/bug-argp1.c: New file.

	* io/ftw.c (ftw_dir): Use __rawmemchr instead of strchr to find
	end of string.
	* stdlib/canonicalize.c (__realpath): Likewise.

	* locale/programs/ld-time.c (time_finish): Don't dereference NULL
	pointer.  [Coverity CID 206]

	* elf/dl-dst.h (DL_DST_REQUIRED): Be prepared for missing link map
	in statically linked code.
	* elf/dl-load.c (_dl_dst_substitute): When replacing ORIGIN in
	statically built code, be prepared to have no link map.
	[Coverity CID 205]

	* argp/argp-help.c (fill_in_uparams): Handle STATE==NULL in
	dgettext calls. [Coverity CID 204]

	* argp/argp-help.c (struct uparams): Remove valid member.  Change
	the one user.
	(uparam_names): Reduce size.  Avoid relative relocations.
	Moved to read-only segment.
	(fill_in_uparams): Update for new layout.

	* sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Parameter can be
	assumed to always be != NULL. [Coverity CID 202]

	* argp/argp-help.c (hol_entry_help): Remove some dead code
	[Coverity CID 200].

	* nis/nss_nis/nis-service.c (_nss_nis_getservbyport_r): Optimize
	away a few more unconditional yperr2nss calls.
	(_nss_nis_getservbyname_r): Likewise.
2006-05-10 00:03:41 +00:00
Ulrich Drepper fff04b32af [BZ #2509]
2006-05-05  Jakub Jelinek  <jakub@redhat.com>
	[BZ #2509]
	* stdio-common/tst-printf.sh: Adjust for tst-printf.c change even
	on 32-bit arches.

2006-05-05  Ulrich Drepper  <drepper@redhat.com>

	* locale/programs/ld-address.c (address_finish): Fix one more
	place where the iso639 array might be access beyond the limits.
2006-05-05 13:37:35 +00:00
Ulrich Drepper f2d5cf5005 * nis/nis_table.c (nis_list): Avoid clearing res twice before
filling it for the first time.
2006-05-05 06:01:26 +00:00
Ulrich Drepper 3e4370cf2b * nis/nis_table.c (get_tablepath): Renamed from __get_tablepath.
Adjust all callers.
	Free res object content before returning.
2006-05-05 03:52:25 +00:00
Ulrich Drepper 1e528c6e1b * nis/nss_nis/nis-pwd.c (internal_nis_getpwent_r): Don't try to
free outkey in error case when batch_read is set.
2006-05-01 22:33:24 +00:00
Ulrich Drepper d4b661e575 * nis/nss_nis/nis-grp.c (internal_nis_getgrent_r): Don't try to
free outkey in error case when batch_read is set [Coverity CID 196].
2006-05-01 22:25:23 +00:00
Ulrich Drepper 5493f3ddc3 * nis/nss_nisplus/nisplus-publickey.c (parse_grp_str): PIDLIST is
supposed to have NGRPS elements.
2006-04-30 15:36:48 +00:00
Ulrich Drepper ac05397075 * nis/nss_nisplus/nisplus-parser.c: Minor optimizations and
cleanups.  Avoid copying data if it can be used in the old place.
2006-04-30 07:01:26 +00:00
Ulrich Drepper 487609e313 * nis/nss_nisplus/nisplus-ethers.c: Add missing null pointer check.
* nis/nss_nisplus/nisplus-hosts.c: Likewise.
	* nis/nss_nisplus/nisplus-network.c: Likewise.
	* nis/nss_nisplus/nisplus-proto.c: Likewise.
	* nis/nss_nisplus/nisplus-rpc.c: Likewise.
	* nis/nss_nisplus/nisplus-service.c: Likewise.
	* nis/nss_nisplus/nisplus-spwd.c: Likewise.
2006-04-30 05:45:15 +00:00
Ulrich Drepper d08a1d404d * nis/nisplus-parser.h (_nss_nisplus_parse_pwent): Add entry
parameter.
	(_nss_nisplus_parse_pwent_chk): New prototype.
	* nis/nss_nisplus/nisplus-parser.c (_nss_nisplus_parse_pwent):
	Add entry parameter.  Use it for column value in all accesses.
	Move checks for well-formed reply to...
	(_nss_nisplus_parse_pwent_chk): ...here.  New function.
	* nis/nss_nisplus/nisplus-pwd.c: Support SETENT_BATCH_READ option.
2006-04-29 20:20:05 +00:00
Ulrich Drepper 5b4f9fad38 * nis/nss_nisplus/nisplus-parser.c: Some cleanups. Remove
hidden_def definitions.
	* nis/nisplus-parser.h: Add parameter names.  Remove hidden_proto
	definitions.
2006-04-29 16:26:41 +00:00
Ulrich Drepper e0d4e91d2b * nis/nss_nis/nis-spwd.c (internal_nis_getspent_r): Remove data
variable.

	* nis/nss-nis.h: Define response_t and intern_t.  Declare _nis_saveit.
	* nis/nss_nis/nis-pwd.c: Remove response_t and intern_t definition.
	(saveit): Renamed to _nis_saveit.  Take parameter which is pointer
	to the intern_t object.  Change all users.
	* nis/nss_nis/nis-grp.c: Remove response_t, intern_t, and saveit
	definition.  Use _nis_saveit instead of saveit.
	* nis/nss_nis/nis-service.c: Likewise.
	* nis/nss_nis/nis-initgroups.c: Likewise.
	(internal_setgrent): Adjust for buffer handling.
	(internal_getgrent_r): Likewise.
	* nis/nss_nis/nis-rpc.c: Likewise.
2006-04-29 01:14:07 +00:00
Ulrich Drepper 4eaa9bb48b * nis/nss-default.c (vars): Add SETENT_BATCH_READ.
* nis/nss: Document SETENT_BATCH_READ.
	* nis/libnsl.h: Define NSS_FLAG_SETENT_BATCH_READ.
	* nis/nss_nis/nis-service.c (saveit): Don't add NUL byte if the
	string is already NUL terminated.
	(internal_nis_endservent): No need to return anything.  Change callers.
	(internal_nis_setservent): One more initialization.
	* nis/nss_nis/nis-pwd.c: Support SETENT_BATCH_READ option.
	* nis/nss_nis/nis-grp.c: Likewise.

	* nis/nss-default.c (init): Rewrite parser to get the variables
2006-04-28 21:08:22 +00:00
Ulrich Drepper ee821689eb * nis/nss-default.c (init): Rewrite parse to get the variables
from a table.
2006-04-28 19:07:15 +00:00
Ulrich Drepper 4718026de2 * nis/nss_nis/nis-service.c: Avoid passing pointer to static
variable around.  Reduce number of memory allocations by creating
	list of memory pools.
2006-04-28 18:42:24 +00:00
Ulrich Drepper 912873399c * nis/ypclnt.c (__xdr_ypresp_all): Minor optimization in string
handling.  Fix typo in comment.
2006-04-28 17:01:50 +00:00
Ulrich Drepper 23948bda4b * nis/nss_nisplus/nisplus-netgrp.c: Cleanups.
* posix/regex.h: Remove obsolete <sys/types.h> comment and special
	code if possible.  Move compatibility code in .text.compat section.
2006-04-24 04:36:38 +00:00
Ulrich Drepper 47ad422ffe * nis/nss_nisplus/nisplus-service.c (_nss_nisplus_parse_servent):
* nis/nss_nisplus/nisplus-rpc.c (_nss_nisplus_parse_rpcent):
	Likewise.
2006-04-15 18:07:00 +00:00