Лучше всего попытаться отправить дескриптор файла через сокет домена Unix. Это описано в Стивенсе и в нескольких местах в Интернете, но я могу найти для вас код, если вы спросите.
Это будет довольно переносимо в наши дни; многие вещи, считающиеся «непереносимыми», когда (например, mmap
!) сейчас чрезвычайно распространены. Если вам нужно быть более переносимым, чем «большинство систем в наши дни», у вас впереди много интересных вопросов, но, возможно, если вы расскажете нам больше о том, что вы делаете и над какими платформами вы работаете ( возможно, не-Unix POSIX платформы?) мы могли бы помочь.