+ goto bad_msg;
+ }
+
+ size = (off_t)-1;
+ if (strncmp_const(t-1,"SIZE ") == 0) {
+ if (sscanf(t - 1, "SIZE " OFF_T_FMT ,
+ (OFF_T_FMT_TYPE *)&size_) != 1) {
+ goto bad_msg;
+ }
+ size = size_;
+ } else if (strncmp_const(t-1,"ERROR ") == 0) {
+ skip_non_whitespace(t, tch);
+ skip_whitespace(t, tch);
+ msg = t-1;
+ skip_quoted_string(t,tch);
+ msg_undo = t[-1];
+ t[-1] = '\0';
+ if (pkt->type == P_REP) {
+ est(dp)->errstr = unquote_string(msg);
+ }
+ t[-1] = msg_undo;