What are the error correcting capabilities of a linear code?