(ITS#4977) check parse_sync_cookie return in syncprov overlay

Full_Name: Donn Cave
Version: 2.4.4
OS: Red Hat RHEL 3
URL:
Submission from: (NULL) (128.95.135.150)
Control from 2.3.24 syncrepl client fails "sid=" parse in
slap_parse_sync_cookie(), but return -1 is ignored, in syncprov_parseCtrl() ca.
line 2770. slapd crashes in syncprov_op_search ca. line 2106, because
srs->sr_state.sids is null.
Reproduce by sending control with invalid "sid=" value. That might be any 2.3
client, or there may be something else whacked here. Client configured
refreshAndPersist.
I added a check for negative return value to the check for negative rid. Result
is "err=2 nentries=0 text=Sync control : cookie parsing error", ... "do_search:
get_ctrls failed", which I assume is good. At least, it doesn't crash.