In the first paragraph of the lgets description, it states that if the list contains binary data, lgets returns bytes of zero. However, in the last full paragraph, the description says that lgets can be used to read lists containing binary data and implies that it should be able to do so without corrupting the data.
Also, note that the last full paragraph says lgets may be used to "read and write lists", but lgets does not write anything.