Partial (-z relro) and full (-z relro, -z now) relro cases are implemented.
Partial relro:
- The ELF sections are reordered so that the ELF internal data sections (.got, .dtors, etc.) precede the program's data sections (.data and .bss).
.got is readonly, .got.plt is still writeable.
Full relro:
- Supports all the features of partial RELRO, .got.plt is also readonly.
You already assign ZRelro to false so the last two lines (I think) can be removed, no?