Oh yes, a bit contrived yet. If you function returns a 32-bit integer then you can interpeter it as a pointer (at least on 32-bit systems...). That stated, you may arrange the two buffer pointers in a struct and return the struct address to the caller. However, IMHO it's better to change the function prototype. :)
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.