* include/sys/strace.h (paranoid_printf): Define as not being part of "all"
output. * pwdgrp.h (pwdgrp::next_num): Rename from next_int. Returns true/false if parse operation succeeded. (pwdgrp::reparse): Remove. (pwdgrp::raw_ptr): New function. Returns pointer in line. (pwdgrp::next_num): New functions for parsing other than unsigned long. * grp.cc (pwdgrp::parse_group): Reinstate previous parsing behavior. Don't fill in fields with NULL and assign empty gr_mem to known pointer rather than doing a pointless calloc. Streamline gr_mem parsing. Don't increment curr_lines here. * passwd.cc (pwdgrp::parse_passwd): Use new behavior of next_num. Don't increment curr_lines here. * uinfo.cc (pwdgrp::next_str): Keep returning EOL if out of data. (pwdgrp::reparse): Remove. (pwdgrp::next_num): Rename from next_int. Return bool indicating success of parse, argument returns value parsed. (pwdgrp::add_line): Increment curr_lines here on successful parse. (pwdgrp::load): (from Pierre Humblet) Don't return status. Just report it here.
This commit is contained in:
@ -45,14 +45,28 @@ class pwdgrp
|
||||
void read_passwd ();
|
||||
void read_group ();
|
||||
char *add_line (char *);
|
||||
char *raw_ptr () const {return lptr;}
|
||||
char *next_str (char = 0);
|
||||
int next_int (char = 0);
|
||||
void reparse (char *);
|
||||
bool next_num (unsigned long&);
|
||||
bool next_num (unsigned int& i)
|
||||
{
|
||||
unsigned long x;
|
||||
bool res = next_num (x);
|
||||
i = (unsigned int) x;
|
||||
return res;
|
||||
}
|
||||
bool next_num (int& i)
|
||||
{
|
||||
unsigned long x;
|
||||
bool res = next_num (x);
|
||||
i = (int) x;
|
||||
return res;
|
||||
}
|
||||
|
||||
public:
|
||||
int curr_lines;
|
||||
|
||||
bool load (const char *);
|
||||
void load (const char *);
|
||||
void refresh (bool check = true)
|
||||
{
|
||||
if (!check && initialized)
|
||||
|
Reference in New Issue
Block a user