add: if (_m->sipifmatch) { if (parse_sipifmatch(_m->sipifmatch) < 0) { paerrno = PA_PARSE_ERR; LOG(L_ERR, "parse_hfs(): Error while parsing SIP-If-Match header field\n"); return -10; } }
context: static int parse_publish_hfs(struct sip_msg* _m){	int rc = 0;	if ((rc = parse_headers(_m, HDR_FROM_F | HDR_EVENT_F | HDR_EXPIRES_F, 0))	    == -1) {		paerrno = PA_PARSE_ERR;		LOG(L_ERR, "parse_publish_hfs(): Error while parsing headers\n");		return -1;	}	if (parse_from_header(_m) < 0) {		paerrno = PA_FROM_ERR;		LOG(L_ERR, "parse_publish_hfs(): From malformed or missing\n");		return -6;	}	if (_m->event) {		if (parse_event(_m->event) < 0) {			paerrno = PA_EVENT_PARSE;			LOG(L_ERR, "parse_publish_hfs(): Error while parsing Event header field\n");			return -8;		}	} else {		paerrno = PA_EVENT_PARSE;		LOG(L_ERR, "parse_publish_hfs(): Missing Event header field\n");		return -7;	}	if (_m->expires) {		if (parse_expires(_m->expires) < 0) {			paerrno = PA_EXPIRES_PARSE;			LOG(L_ERR, "parse_publish_hfs(): Error while parsing Expires header field\n");			return -9;		}	}	return 0;}