tcp: make parameter type checking more strict