@@ -231,13 +231,15 @@ size_t SimpleRequestModel::deserialize(::simple::SimpleRequest& value) const noe
231231
232232FieldModel<::simple::SimpleResponse>::FieldModel(FBEBuffer& buffer, size_t offset) noexcept : _buffer(buffer), _offset(offset)
233233 , id(buffer, 4 + 4 )
234- , Hash(buffer, id.fbe_offset() + id.fbe_size())
234+ , Length(buffer, id.fbe_offset() + id.fbe_size())
235+ , Hash(buffer, Length.fbe_offset() + Length.fbe_size())
235236{}
236237
237238size_t FieldModel<::simple::SimpleResponse>::fbe_body() const noexcept
238239{
239240 size_t fbe_result = 4 + 4
240241 + id.fbe_size ()
242+ + Length.fbe_size ()
241243 + Hash.fbe_size ()
242244 ;
243245 return fbe_result;
@@ -256,6 +258,7 @@ size_t FieldModel<::simple::SimpleResponse>::fbe_extra() const noexcept
256258
257259 size_t fbe_result = fbe_body ()
258260 + id.fbe_extra ()
261+ + Length.fbe_extra ()
259262 + Hash.fbe_extra ()
260263 ;
261264
@@ -297,6 +300,12 @@ bool FieldModel<::simple::SimpleResponse>::verify_fields(size_t fbe_struct_size)
297300 return false ;
298301 fbe_current_size += id.fbe_size ();
299302
303+ if ((fbe_current_size + Length.fbe_size ()) > fbe_struct_size)
304+ return true ;
305+ if (!Length.verify ())
306+ return false ;
307+ fbe_current_size += Length.fbe_size ();
308+
300309 if ((fbe_current_size + Hash.fbe_size ()) > fbe_struct_size)
301310 return true ;
302311 if (!Hash.verify ())
@@ -351,6 +360,12 @@ void FieldModel<::simple::SimpleResponse>::get_fields(::simple::SimpleResponse&
351360 fbe_value.id = FBE::uuid_t::sequential ();
352361 fbe_current_size += id.fbe_size ();
353362
363+ if ((fbe_current_size + Length.fbe_size ()) <= fbe_struct_size)
364+ Length.get (fbe_value.Length );
365+ else
366+ fbe_value.Length = (uint32_t )0ull ;
367+ fbe_current_size += Length.fbe_size ();
368+
354369 if ((fbe_current_size + Hash.fbe_size ()) <= fbe_struct_size)
355370 Hash.get (fbe_value.Hash );
356371 else
@@ -396,6 +411,7 @@ void FieldModel<::simple::SimpleResponse>::set(const ::simple::SimpleResponse& f
396411void FieldModel<::simple::SimpleResponse>::set_fields(const ::simple::SimpleResponse& fbe_value) noexcept
397412{
398413 id.set (fbe_value.id );
414+ Length.set (fbe_value.Length );
399415 Hash.set (fbe_value.Hash );
400416}
401417
0 commit comments