diff --git a/repos/libports/src/lib/vfs/lwip/vfs.cc b/repos/libports/src/lib/vfs/lwip/vfs.cc index 8bc423e6d..4b0dda92e 100644 --- a/repos/libports/src/lib/vfs/lwip/vfs.cc +++ b/repos/libports/src/lib/vfs/lwip/vfs.cc @@ -1775,6 +1775,12 @@ class Lwip::File_system final : public Vfs::File_system char *dst, file_size count, file_size &out_count) override { + /* + * LwIP buffer operations are limited to sizes that + * can be expressed in sixteen bits + */ + count = Genode::min(count, 0xffffU); + out_count = 0; if ((!vfs_handle) ||