While posting a public key file to a remote server via cut-n-paste it
is possible that the key won't have the proper ending. It might not have
the standard carriage return or line feed. It might even have extra
spaces. This patch is based on the originators original patch, but is
more extensive. If reading the file ends in EOF, remove that character.
Then if there are spaces at the end of the file remove them also.
This does not fix the posibility of the same error in a multi-key file, but
it is a start.
The convience functions pass in the return from strlen() which is "size_t",
usually an "unsigned long". This created the possiblility of passing in
a value that could look negative.
All "int" lengths were converted to "unsigned int". Ideally they should
all become "size_t", but that is a bigger change. This is a good start.