+
+ off = ad->ad_eid[ADEID_RFORK].ade_off;
+ if (off > st.st_size) {
+ LOG(log_error, logtype_default, "ad_v1tov2: invalid resource fork offset. (off: %u)", off);
+ errno = EIO;
+ goto bail_truncate;
+ }
+
+ if (ad->ad_eid[ADEID_RFORK].ade_len > st.st_size - off) {
+ LOG(log_error, logtype_default, "ad_v1tov2: invalid resource fork length. (rfork len: %u)", ad->ad_eid[ADEID_RFORK].ade_len);
+ errno = EIO;
+ goto bail_truncate;
+ }
+