from openfire. It is clear because openfire don't know how to handle it.
No, openfire is completly agnostic to the content of IQs that are not directed to openfire itself. The service-unavailable error is usually send by xmpp entities if they don't know how to handle the IQ. Please show use the full IQ get/set stanza and the full IQ responise error stanza.
in other words, openfire do not need to handle it, just pass it will be fine.
That is already the case.