Hungary passes controversial law 'protecting national sovereignty'