accept port as second argument