srm: fix semi-infinite ls range with non-zero offset

The SRM protocol allows the client to request a directory listing with
an offset but no length.  Internally, we represent this situation as
if the client requested Integer.MAX_VALUE responses.

Later, we build a Range describing the requested directory listing; however,
this fails to take into account that adding a small positive integer to
Integer.MAX_VALUE results in a negative number, which triggers an
IllegalArguementException.

This is fixed so that if the index of last requested item is
Integer.MAX_VALUE or more then a semi-infinite range is generated instead.

Target: master
Ticket: http://rt.dcache.org/Ticket/Display.html?id=7181
Ticket: http://rt.dcache.org/Ticket/Display.html?id=8550
Patch: https://rb.dcache.org/r/7613/
Acked-by: Gerd Behrmann
Request: 2.11
Request: 2.10
Request: 2.9
Request: 2.8
Request: 2.7
Request: 2.6