Currently `close(2)` erroneously return `EOPNOTSUPP` for `PF_ROUTE` sockets. It happened after making rtsock socket implementation [[ https://cgit.freebsd.org/src/commit/?id=36b10ac2cd18a535cac20ccf51e3fc6c408671e8 | self-contained]].
Current rtsock code marks socket as connected in `rts_attach()`. `soclose()` tries to disconnect such socket using `.pr_disconnect` callback.
rtsock does not implement this callback, resulting in the default method being substituted. This default method returns `ENOTSUPP`, failing `soclose()` logic.
This diff restores the previous behaviour by adding custom `pr_disconnect()` returning `ENOTCONN`.