  Regenerating codes are efficient methods for distributed storage in storage
networks, where node failures are common. They guarantee low cost data
reconstruction and repair through accessing only a predefined number of
arbitrarily chosen storage nodes in the network. In this work we consider two
simultaneous extensions to the original regenerating codes framework introduced
in [1]; i) both data reconstruction and repair are resilient to the presence of
a certain number of erroneous nodes in the network and ii) the number of helper
nodes in every repair is not fixed, but is a flexible parameter that can be
selected during the runtime. We study the fundamental limits of required total
repair bandwidth and provide an upper bound for the storage capacity of these
codes under these assumptions. We then focus on the minimum repair bandwidth
(MBR) case and derive the exact storage capacity by presenting explicit coding
schemes with exact repair, which achieve the upper bound of the storage
capacity in the considered setup. To this end, we first provide a more natural
extension of the well-known Product Matrix (PM) MBR codes [2], modified to
provide flexibility in the choice of number of helpers in each repair, and
simultaneously be robust to erroneous nodes in the network. This is achieved by
proving the non-singularity of family of matrices in large enough finite
fields. We next provide another extension of the PM codes, based on novel
repair schemes which enable flexibility in the number of helpers and robustness
against erroneous nodes without any extra cost in field size compared to the
original PM codes.
