Pipes copy the original rte with old values, so they require rte to be
exported with stored tmpattrs. Other protocols access stored attributes
using eattr list, so they require rte to be exported with expanded
tmpattrs. This is temporary hack, we plan to remove whoe tmpattr mechanism.
Thanks to Paul Donohue for the bugreport.
goto reject;
}
+#ifdef CONFIG_PIPE
+ /* Pipes need rte with stored tmpattrs, remaining protocols need expanded tmpattrs */
+ if (p->proto == &proto_pipe)
+ rte_store_tmp_attrs(rt, pool, NULL);
+#endif
+
accept:
if (rt != rt0)
*rt_free = rt;