daemon/listdomain.cc
changeset 2 b3afb9f1e801
parent 0 6f7a81934006
equal deleted inserted replaced
1:30113bfbe723 2:b3afb9f1e801
    51     RETURN(err, "Base user has no virtual password table");
    51     RETURN(err, "Base user has no virtual password table");
    52 
    52 
    53   if(!write_buf(fd, "", 0))
    53   if(!write_buf(fd, "", 0))
    54     RETURN(err, "Failed while writing initial OK response");
    54     RETURN(err, "Failed while writing initial OK response");
    55 
    55 
    56   vpwentry entry;
    56   vpwentry* entry;
    57   while(reader->get(entry)) {
    57   while((entry = reader->get()) != 0) {
    58     mystring code = entry.to_record();
    58     mystring code = entry->to_record();
    59     unsigned length = entry.name.length() + 1 + code.length() + 1;
    59     unsigned length = entry->name.length() + 1 + code.length();
    60     char buf[length];
    60     char buf[length];
    61     memcpy(buf, entry.name.c_str(), entry.name.length()+1);
    61     memcpy(buf, entry->name.c_str(), entry->name.length()+1);
    62     memcpy(buf+entry.name.length()+1, code.c_str(), code.length()+1);
    62     memcpy(buf+entry->name.length()+1, code.c_str(), code.length());
    63     if(!write_buf(fd, buf, length))
    63     if(!write_buf(fd, buf, length))
    64       RETURN(err, "Failed while writing list entry");
    64       RETURN(err, "Failed while writing list entry");
       
    65     delete entry;
    65   }
    66   }
    66   
    67   
    67   delete reader;
    68   delete reader;
    68   RETURN(ok, "");
    69   RETURN(ok, "");
    69 }
    70 }