Loading src/admin.cpp +2 −4 Changes for src/admin.cpp: 2 added lines, 4 removed lines. Original line number Diff line number Diff line Loading @@ -449,11 +449,9 @@ namespace authdb { curec->datasize = sizeof(int); curec->data = new char[sizeof(int)]; int val = atoi(value.data()); std::copy(reinterpret_cast<char*>(&val), reinterpret_cast<char*>(&val + sizeof(int)), curec->data); std::memcpy(curec->data, &val, sizeof(int)); editrec->append(*curec); delete[] reinterpret_cast<int*>(curec->data); delete[] curec->data; } } Loading src/client.cpp +4 −2 Changes for src/client.cpp: 4 added lines, 2 removed lines. Original line number Diff line number Diff line Loading @@ -145,11 +145,13 @@ void authdb::Client::info(AuthBackend& backend, class ClientData& dat, size_t& p if(uuid::uuid(dat.Data.ruid).empty()) throw AuthBackendError("user info uid required!"); while(pos<end){ while(pos+sizeof(AuthData::Record)<=end){ authdb::AuthData::Record *cur=new AuthData::Record; backend.setPos(pos); backend.read((unsigned char*)cur,sizeof(AuthData::Record)); pos=backend.getPos()+cur->datasize; size_t next=backend.getPos()+cur->datasize; if(next<backend.getPos() || next>end){ delete cur; break; } pos=next; if(cur->type == ClientData && uuid::uuid(dat.Data.ruid)==cur->ruid && strcmp(cur->fieldname,"clientname")==0 ){ Loading src/data.cpp +4 −2 Changes for src/data.cpp: 4 added lines, 2 removed lines. Original line number Diff line number Diff line Loading @@ -174,7 +174,7 @@ namespace authdb { for(auto chel : changemap){ size_t rd=sizeof(authdb::AuthHeader),end=backend.end(); while(rd<end){ while(rd+sizeof(AuthData::Record)<=end){ std::shared_ptr<authdb::AuthData::Record> rdrec(new AuthData::Record); backend.setPos(rd); backend.read(reinterpret_cast<unsigned char*>(rdrec.get()),sizeof(AuthData::Record)); Loading @@ -196,7 +196,9 @@ namespace authdb { } rd=backend.getPos(); }else{ rd=backend.getPos()+rdrec->datasize; size_t next=backend.getPos()+rdrec->datasize; if(next<backend.getPos() || next>end) break; rd=next; } } } Loading src/domain.cpp +4 −2 Changes for src/domain.cpp: 4 added lines, 2 removed lines. Original line number Diff line number Diff line Loading @@ -152,11 +152,13 @@ void authdb::Domain::info(AuthBackend& backend, class DomainData& dat, size_t& p if(uuid::uuid(dat.Data.ruid).empty()) throw AuthBackendError("Domain info domainid required!"); while(pos<end){ while(pos+sizeof(AuthData::Record)<=end){ authdb::AuthData::Record *cur=new AuthData::Record; backend.setPos(pos); backend.read((unsigned char*)cur,sizeof(AuthData::Record)); pos=backend.getPos()+cur->datasize; size_t next=backend.getPos()+cur->datasize; if(next<backend.getPos() || next>end){ delete cur; break; } pos=next; if(cur->type == DataType::DomainData && uuid::uuid(dat.Data.ruid) ==cur->ruid && strcmp(cur->fieldname,"domainname")==0 ){ Loading src/gpo.cpp +4 −2 Changes for src/gpo.cpp: 4 added lines, 2 removed lines. Original line number Diff line number Diff line Loading @@ -176,11 +176,13 @@ void authdb::Gpo::info(AuthBackend &backend, class GpoData& dat, size_t &pos){ if(uuid::uuid(dat.Data.ruid).empty()) throw AuthBackendError("gpo info gpoid required!"); while(pos<end){ while(pos+sizeof(AuthData::Record)<=end){ std::shared_ptr<authdb::AuthData::Record> cur=std::make_shared<AuthData::Record>(); backend.setPos(pos); backend.read((unsigned char*)cur.get(),sizeof(AuthData::Record)); pos=backend.getPos()+cur->datasize; size_t next=backend.getPos()+cur->datasize; if(next<backend.getPos() || next>end) break; pos=next; if(cur->type == PolicyData && uuid::uuid(dat.Data.ruid)==cur->ruid && strcmp(cur->fieldname,"gponame")==0 ){ Loading Loading
src/admin.cpp +2 −4 Changes for src/admin.cpp: 2 added lines, 4 removed lines. Original line number Diff line number Diff line Loading @@ -449,11 +449,9 @@ namespace authdb { curec->datasize = sizeof(int); curec->data = new char[sizeof(int)]; int val = atoi(value.data()); std::copy(reinterpret_cast<char*>(&val), reinterpret_cast<char*>(&val + sizeof(int)), curec->data); std::memcpy(curec->data, &val, sizeof(int)); editrec->append(*curec); delete[] reinterpret_cast<int*>(curec->data); delete[] curec->data; } } Loading
src/client.cpp +4 −2 Changes for src/client.cpp: 4 added lines, 2 removed lines. Original line number Diff line number Diff line Loading @@ -145,11 +145,13 @@ void authdb::Client::info(AuthBackend& backend, class ClientData& dat, size_t& p if(uuid::uuid(dat.Data.ruid).empty()) throw AuthBackendError("user info uid required!"); while(pos<end){ while(pos+sizeof(AuthData::Record)<=end){ authdb::AuthData::Record *cur=new AuthData::Record; backend.setPos(pos); backend.read((unsigned char*)cur,sizeof(AuthData::Record)); pos=backend.getPos()+cur->datasize; size_t next=backend.getPos()+cur->datasize; if(next<backend.getPos() || next>end){ delete cur; break; } pos=next; if(cur->type == ClientData && uuid::uuid(dat.Data.ruid)==cur->ruid && strcmp(cur->fieldname,"clientname")==0 ){ Loading
src/data.cpp +4 −2 Changes for src/data.cpp: 4 added lines, 2 removed lines. Original line number Diff line number Diff line Loading @@ -174,7 +174,7 @@ namespace authdb { for(auto chel : changemap){ size_t rd=sizeof(authdb::AuthHeader),end=backend.end(); while(rd<end){ while(rd+sizeof(AuthData::Record)<=end){ std::shared_ptr<authdb::AuthData::Record> rdrec(new AuthData::Record); backend.setPos(rd); backend.read(reinterpret_cast<unsigned char*>(rdrec.get()),sizeof(AuthData::Record)); Loading @@ -196,7 +196,9 @@ namespace authdb { } rd=backend.getPos(); }else{ rd=backend.getPos()+rdrec->datasize; size_t next=backend.getPos()+rdrec->datasize; if(next<backend.getPos() || next>end) break; rd=next; } } } Loading
src/domain.cpp +4 −2 Changes for src/domain.cpp: 4 added lines, 2 removed lines. Original line number Diff line number Diff line Loading @@ -152,11 +152,13 @@ void authdb::Domain::info(AuthBackend& backend, class DomainData& dat, size_t& p if(uuid::uuid(dat.Data.ruid).empty()) throw AuthBackendError("Domain info domainid required!"); while(pos<end){ while(pos+sizeof(AuthData::Record)<=end){ authdb::AuthData::Record *cur=new AuthData::Record; backend.setPos(pos); backend.read((unsigned char*)cur,sizeof(AuthData::Record)); pos=backend.getPos()+cur->datasize; size_t next=backend.getPos()+cur->datasize; if(next<backend.getPos() || next>end){ delete cur; break; } pos=next; if(cur->type == DataType::DomainData && uuid::uuid(dat.Data.ruid) ==cur->ruid && strcmp(cur->fieldname,"domainname")==0 ){ Loading
src/gpo.cpp +4 −2 Changes for src/gpo.cpp: 4 added lines, 2 removed lines. Original line number Diff line number Diff line Loading @@ -176,11 +176,13 @@ void authdb::Gpo::info(AuthBackend &backend, class GpoData& dat, size_t &pos){ if(uuid::uuid(dat.Data.ruid).empty()) throw AuthBackendError("gpo info gpoid required!"); while(pos<end){ while(pos+sizeof(AuthData::Record)<=end){ std::shared_ptr<authdb::AuthData::Record> cur=std::make_shared<AuthData::Record>(); backend.setPos(pos); backend.read((unsigned char*)cur.get(),sizeof(AuthData::Record)); pos=backend.getPos()+cur->datasize; size_t next=backend.getPos()+cur->datasize; if(next<backend.getPos() || next>end) break; pos=next; if(cur->type == PolicyData && uuid::uuid(dat.Data.ruid)==cur->ruid && strcmp(cur->fieldname,"gponame")==0 ){ Loading