cstruct update