+ /*
+ * This is a kludge, but if we receive accept
+ * random urgent pointers, we'll crash in
+ * soreceive. It's hard to imagine someone
+ * actually wanting to send this much urgent data.
+ */
+ if (ti->ti_urp > tp->t_maxseg) { /* XXX */
+ ti->ti_urp = 0; /* XXX */
+ tiflags &= ~TH_URG; /* XXX */
+ ti->ti_flags &= ~TH_URG; /* XXX */
+ goto badurp; /* XXX */
+ }