Description of problem:
The memory leak can be triggerred remotely. After the `fast_open_file
' cache is full with the opend map file, client requests the maps
that exist and not exist alternatively, then the memory for those
maps that not exist will leak. Repeat runs will result in ypserv use
more and more memory, and running more slowly. Actually, this problem
is similar to the previous one [RHSA-2002:223-07] reported
October/msg00015.html". But with different inputs
Version-Release number of selected component (if applicable):
prior and up to 2.12.1
Steps to Reproduce:
1.modify cached_map_file number in configuration file 'ypserv.conf'
as follows. "files: 3"
2.send three requests "ypmatch nfsnobody passwd", "ypmatch nfsnobody
group", "ypmatch nfsnobody rpc" (this is to fill the map file caches)
3.send request map that does not exist, like "ypmatch aaa foooooooooo"
, and request map that exist, like "ypmatch nfsnobody netgroup"
memory used by ypserv more and more
should keep constant
The bug exists in file ./lib/yp_db.c. The leaked memory is allocated
at line 376 and line 377 and is leaked at line 338 and 339.
Fixed in ypserv-1.3.9-3.6x