don't use recv in modules as it may not be supported by AE implementation