У меня в каких-то отдаленных частях мозга присутствовало воспоминание, что для truncate файла нужно вызвать write с нулевым количеством байт. На самом деле, это ни к какому результату не приводит (о чем честно написано в glibc manual), а нужно использовать функцию ftruncate.
Подскажите, про нулевое количество байт у write я что-то с чем-то путаю, или в классическом UNIX действительн должно быть так?