Bread() always reads exactly nbytes of data if it can. only when it reaches end of file or an error it will return less. so the Breadn() function that was introduced has been removed. sorry for the confusion.