gmc: Basic Structure, adopted from hide_sockets