rename ipc.ListenX to ipc.Listen.

Change-Id: Iffbd0e951c32dd39c6bd5abbc4a8833709ecb9b2
diff --git a/lib/modules/core/echo.go b/lib/modules/core/echo.go
index 8456539..9cac914 100644
--- a/lib/modules/core/echo.go
+++ b/lib/modules/core/echo.go
@@ -49,7 +49,7 @@
 		return err
 	}
 	defer server.Stop()
-	ep, err := server.ListenX(profiles.LocalListenSpec)
+	ep, err := server.Listen(profiles.LocalListenSpec)
 	if err != nil {
 		return err
 	}
diff --git a/lib/modules/core/mounttable.go b/lib/modules/core/mounttable.go
index 8ec1bd0..79d9844 100644
--- a/lib/modules/core/mounttable.go
+++ b/lib/modules/core/mounttable.go
@@ -53,7 +53,7 @@
 	if err != nil {
 		return fmt.Errorf("mounttable.NewMountTable failed: %s", err)
 	}
-	ep, err := server.ListenX(profiles.LocalListenSpec)
+	ep, err := server.Listen(profiles.LocalListenSpec)
 	if err != nil {
 		return fmt.Errorf("server.Listen failed: %s", err)
 	}
diff --git a/lib/signals/signals_test.go b/lib/signals/signals_test.go
index e383d39..bddef80 100644
--- a/lib/signals/signals_test.go
+++ b/lib/signals/signals_test.go
@@ -314,7 +314,7 @@
 	}
 	ch := make(chan string)
 	var ep naming.Endpoint
-	if ep, err = server.ListenX(profiles.LocalListenSpec); err != nil {
+	if ep, err = server.Listen(profiles.LocalListenSpec); err != nil {
 		t.Fatalf("Got error: %v", err)
 	}
 	if err := server.Serve("", ipc.LeafDispatcher(node.NewServerConfig(&configServer{ch}), vflag.NewAuthorizerOrDie())); err != nil {
diff --git a/lib/testutil/modules/mounttable.go b/lib/testutil/modules/mounttable.go
index e4ace22..d2a96dc 100644
--- a/lib/testutil/modules/mounttable.go
+++ b/lib/testutil/modules/mounttable.go
@@ -100,7 +100,7 @@
 	if err != nil {
 		bbExitWithError(fmt.Sprintf("mounttable.NewMountTable failed with %v", err))
 	}
-	ep, err := server.ListenX(profiles.LocalListenSpec)
+	ep, err := server.Listen(profiles.LocalListenSpec)
 	if err != nil {
 		bbExitWithError(fmt.Sprintf("server.Listen failed with %v", err))
 	}
diff --git a/lib/testutil/modules/servers.go b/lib/testutil/modules/servers.go
index 2767f56..2483dd6 100644
--- a/lib/testutil/modules/servers.go
+++ b/lib/testutil/modules/servers.go
@@ -39,7 +39,7 @@
 	if err != nil {
 		bbExitWithError(fmt.Sprintf("%s failed: %v", msg, err))
 	}
-	ep, err := server.ListenX(profiles.LocalListenSpec)
+	ep, err := server.Listen(profiles.LocalListenSpec)
 	if err != nil {
 		bbExitWithError(fmt.Sprintf("%s failed: %v", msg, err))
 	}
diff --git a/profiles/generic.go b/profiles/generic.go
index 1004fff..0d9dda2 100644
--- a/profiles/generic.go
+++ b/profiles/generic.go
@@ -11,7 +11,7 @@
 )
 
 // LocalListenSpec is a ListenSpec for 127.0.0.1.
-var LocalListenSpec = &ipc.ListenSpec{
+var LocalListenSpec = ipc.ListenSpec{
 	Protocol:       "tcp",
 	Address:        "127.0.0.1:0",
 	AddressChooser: internal.IPAddressChooser,
diff --git a/profiles/roaming/roaming.go b/profiles/roaming/roaming.go
index 960adfc..d9314bb 100644
--- a/profiles/roaming/roaming.go
+++ b/profiles/roaming/roaming.go
@@ -36,7 +36,7 @@
 
 	// ListenSpec is an initialized instance of ipc.ListenSpec that can
 	// be used with ipc.Listen.
-	ListenSpec *ipc.ListenSpec
+	ListenSpec ipc.ListenSpec
 )
 
 func init() {
@@ -74,7 +74,7 @@
 func (p *profile) Init(rt veyron2.Runtime, publisher *config.Publisher) error {
 	log := rt.Logger()
 
-	ListenSpec = &ipc.ListenSpec{
+	ListenSpec = ipc.ListenSpec{
 		Protocol: listenProtocolFlag.Protocol,
 		Address:  listenAddressFlag.String(),
 		Proxy:    listenProxyFlag,
@@ -111,7 +111,7 @@
 // monitorNetworkSettings will monitor network configuration changes and
 // publish subsequent Settings to reflect any changes detected.
 func monitorNetworkSettings(rt veyron2.Runtime, stop <-chan struct{},
-	ch chan<- config.Setting, listenSpec *ipc.ListenSpec) {
+	ch chan<- config.Setting, listenSpec ipc.ListenSpec) {
 	defer close(ch)
 
 	log := rt.Logger()
diff --git a/profiles/roaming/roaming_server.go b/profiles/roaming/roaming_server.go
index 73a36ad..6e14221 100644
--- a/profiles/roaming/roaming_server.go
+++ b/profiles/roaming/roaming_server.go
@@ -23,7 +23,7 @@
 	}
 
 	fmt.Printf("listen spec: %v\n", roaming.ListenSpec)
-	ep, err := server.ListenX(roaming.ListenSpec)
+	ep, err := server.Listen(roaming.ListenSpec)
 	if err != nil {
 		log.Fatalf("unexpected error: %q", err)
 	}
diff --git a/profiles/static/static.go b/profiles/static/static.go
index 84241c2..960f347 100644
--- a/profiles/static/static.go
+++ b/profiles/static/static.go
@@ -24,7 +24,7 @@
 
 	// ListenSpec is an initialized instance of ipc.ListenSpec that can
 	// be used with ipc.Listen.
-	ListenSpec *ipc.ListenSpec
+	ListenSpec ipc.ListenSpec
 )
 
 func init() {
@@ -60,7 +60,7 @@
 func (p *static) Init(rt veyron2.Runtime, _ *config.Publisher) error {
 	log := rt.Logger()
 
-	ListenSpec = &ipc.ListenSpec{
+	ListenSpec = ipc.ListenSpec{
 		Protocol: listenProtocolFlag.Protocol,
 		Address:  listenAddressFlag.String(),
 		Proxy:    listenProxyFlag,
diff --git a/runtimes/google/ipc/benchmarks/server.go b/runtimes/google/ipc/benchmarks/server.go
index 86c28e9..aca9f60 100644
--- a/runtimes/google/ipc/benchmarks/server.go
+++ b/runtimes/google/ipc/benchmarks/server.go
@@ -32,12 +32,12 @@
 // StartServer starts a server that implements the Benchmark service. The
 // server listens to the given protocol and address, and returns the veyron
 // address of the server and a callback function to stop the server.
-func StartServer(runtime veyron2.Runtime, listenSpec *ipc.ListenSpec) (string, func()) {
+func StartServer(runtime veyron2.Runtime, listenSpec ipc.ListenSpec) (string, func()) {
 	server, err := runtime.NewServer()
 	if err != nil {
 		vlog.Fatalf("NewServer failed: %v", err)
 	}
-	ep, err := server.ListenX(listenSpec)
+	ep, err := server.Listen(listenSpec)
 	if err != nil {
 		vlog.Fatalf("Listen failed: %v", err)
 	}
diff --git a/runtimes/google/ipc/cancel_test.go b/runtimes/google/ipc/cancel_test.go
index adba274..cc30a2f 100644
--- a/runtimes/google/ipc/cancel_test.go
+++ b/runtimes/google/ipc/cancel_test.go
@@ -59,7 +59,7 @@
 	if err != nil {
 		return nil, err
 	}
-	if _, err := s.Listen("tcp", "127.0.0.1:0"); err != nil {
+	if _, err := s.Listen(ipc.ListenSpec{Protocol: "tcp", Address: "127.0.0.1:0"}); err != nil {
 		return nil, err
 	}
 
diff --git a/runtimes/google/ipc/debug_test.go b/runtimes/google/ipc/debug_test.go
index d7c50ee..6292622 100644
--- a/runtimes/google/ipc/debug_test.go
+++ b/runtimes/google/ipc/debug_test.go
@@ -37,7 +37,7 @@
 	}
 	defer server.Stop()
 	server.Serve("", ipc.LeafDispatcher(&testObject{}, nil))
-	ep, err := server.ListenX(&listenSpec)
+	ep, err := server.Listen(listenSpec)
 	if err != nil {
 		t.Fatalf("server.Listen failed: %v", err)
 	}
diff --git a/runtimes/google/ipc/full_test.go b/runtimes/google/ipc/full_test.go
index 863f367..a26570f 100644
--- a/runtimes/google/ipc/full_test.go
+++ b/runtimes/google/ipc/full_test.go
@@ -174,7 +174,7 @@
 		t.Errorf("InternalNewServer failed: %v", err)
 	}
 	vlog.VI(1).Info("server.Listen")
-	ep, err := server.ListenX(&listenSpec)
+	ep, err := server.Listen(listenSpec)
 	if err != nil {
 		t.Errorf("server.Listen failed: %v", err)
 	}
@@ -274,7 +274,7 @@
 	if err != nil {
 		t.Errorf("InternalNewServer failed: %v", err)
 	}
-	_, err = server.ListenX(&listenSpec)
+	_, err = server.Listen(listenSpec)
 	if err != nil {
 		t.Errorf("server.Listen failed: %v", err)
 	}
@@ -597,7 +597,7 @@
 		t.Fatal(err)
 	}
 	defer server.Stop()
-	if _, err := server.ListenX(&listenSpec); err != nil {
+	if _, err := server.Listen(listenSpec); err != nil {
 		t.Fatal(err)
 	}
 
@@ -993,7 +993,7 @@
 	spec := listenSpec
 	spec.Address = ":0"
 	spec.AddressChooser = pa
-	ep, err := server.ListenX(&spec)
+	ep, err := server.Listen(spec)
 	iep := ep.(*inaming.Endpoint)
 	host, _, err := net.SplitHostPort(iep.Address)
 	if err != nil {
@@ -1003,7 +1003,7 @@
 		t.Errorf("got %q, want %q", got, want)
 	}
 	// Won't override the specified address.
-	ep, err = server.ListenX(&listenSpec)
+	ep, err = server.Listen(listenSpec)
 	iep = ep.(*inaming.Endpoint)
 	host, _, err = net.SplitHostPort(iep.Address)
 	if err != nil {
@@ -1029,7 +1029,7 @@
 	spec := listenSpec
 	spec.Address = ":0"
 	spec.AddressChooser = paerr
-	ep, err := server.ListenX(&spec)
+	ep, err := server.Listen(spec)
 	iep := ep.(*inaming.Endpoint)
 	host, _, err := net.SplitHostPort(iep.Address)
 	if err != nil {
diff --git a/runtimes/google/ipc/server.go b/runtimes/google/ipc/server.go
index c4d6fcd..a0d207d 100644
--- a/runtimes/google/ipc/server.go
+++ b/runtimes/google/ipc/server.go
@@ -133,6 +133,7 @@
 	return "", fmt.Errorf("unable to resolve %q to an endpoint", address)
 }
 
+/*
 // ipAddressChooser returns the preferred IP address, which is,
 // a public IPv4 address, then any non-loopback IPv4, then a public
 // IPv6 address and finally any non-loopback/link-local IPv6
@@ -246,6 +247,7 @@
 	s.publisher.AddServer(s.publishEP(iep, s.servesMountTable), s.servesMountTable)
 	return ep, nil
 }
+*/
 
 // externalEndpoint examines the endpoint returned by the stream listen call
 // and fills in the address to publish to the mount table. It also returns the
@@ -288,7 +290,7 @@
 	return iep, nil, nil
 }
 
-func (s *server) ListenX(listenSpec *ipc.ListenSpec) (naming.Endpoint, error) {
+func (s *server) Listen(listenSpec ipc.ListenSpec) (naming.Endpoint, error) {
 	defer vlog.LogCall()()
 	s.Lock()
 	// Shortcut if the server is stopped, to avoid needlessly creating a
diff --git a/runtimes/google/ipc/server_test.go b/runtimes/google/ipc/server_test.go
index e70d354..9718c2a 100644
--- a/runtimes/google/ipc/server_test.go
+++ b/runtimes/google/ipc/server_test.go
@@ -150,7 +150,7 @@
 	defer proxy.Stop()
 	spec := listenSpec
 	spec.Proxy = "proxy"
-	if _, err := server.ListenX(&spec); err != nil {
+	if _, err := server.Listen(spec); err != nil {
 		t.Fatal(err)
 	}
 	if err := server.Serve("mountpoint/server", testServerDisp{&testServer{}}); err != nil {
@@ -205,7 +205,7 @@
 	}
 	spec := listenSpec
 	spec.Address = args[1]
-	ep, err := server.ListenX(&spec)
+	ep, err := server.Listen(spec)
 	if err != nil {
 		return fmt.Errorf("server.Listen failed: %v", err)
 	}
diff --git a/runtimes/google/naming/namespace/all_test.go b/runtimes/google/naming/namespace/all_test.go
index 137833b..8d37312 100644
--- a/runtimes/google/naming/namespace/all_test.go
+++ b/runtimes/google/naming/namespace/all_test.go
@@ -184,7 +184,7 @@
 	}
 	// Add a mount table server.
 	// Start serving on a loopback address.
-	ep, err := s.Listen("tcp", "127.0.0.1:0")
+	ep, err := s.Listen(ipc.ListenSpec{Protocol: "tcp", Address: "127.0.0.1:0"})
 	if err != nil {
 		boom(t, "Failed to Listen: %s", err)
 	}
diff --git a/runtimes/google/rt/ipc_test.go b/runtimes/google/rt/ipc_test.go
index c2ccbf7..01cbd00 100644
--- a/runtimes/google/rt/ipc_test.go
+++ b/runtimes/google/rt/ipc_test.go
@@ -127,7 +127,7 @@
 	}
 	defer server.Stop()
 	var serverObjectName string
-	if endpoint, err := server.ListenX(profiles.LocalListenSpec); err != nil {
+	if endpoint, err := server.Listen(profiles.LocalListenSpec); err != nil {
 		t.Fatal(err)
 	} else {
 		serverObjectName = naming.JoinAddressName(endpoint.String(), "")
diff --git a/runtimes/google/rt/mgmt.go b/runtimes/google/rt/mgmt.go
index e95ec73..103d804 100644
--- a/runtimes/google/rt/mgmt.go
+++ b/runtimes/google/rt/mgmt.go
@@ -41,7 +41,7 @@
 	return
 }
 
-func (m *mgmtImpl) initMgmt(rt *vrt, listenSpec *ipc.ListenSpec) error {
+func (m *mgmtImpl) initMgmt(rt *vrt, listenSpec ipc.ListenSpec) error {
 	m.rt = rt
 	parentName := parentName()
 	if len(parentName) == 0 {
@@ -53,7 +53,7 @@
 	}
 	// TODO(caprita): We should pick the address to listen on from config.
 	var ep naming.Endpoint
-	if ep, err = m.server.ListenX(listenSpec); err != nil {
+	if ep, err = m.server.Listen(listenSpec); err != nil {
 		return err
 	}
 	if err := m.server.Serve("", ipc.LeafDispatcher(appcycle.NewServerAppCycle(m), nil)); err != nil {
diff --git a/runtimes/google/rt/mgmt_test.go b/runtimes/google/rt/mgmt_test.go
index aa74c2d..6cc07b5 100644
--- a/runtimes/google/rt/mgmt_test.go
+++ b/runtimes/google/rt/mgmt_test.go
@@ -269,7 +269,7 @@
 	ch := make(chan string)
 
 	var ep naming.Endpoint
-	if ep, err = server.ListenX(profiles.LocalListenSpec); err != nil {
+	if ep, err = server.Listen(profiles.LocalListenSpec); err != nil {
 		t.Fatalf("Got error: %v", err)
 	}
 	if err := server.Serve("", ipc.LeafDispatcher(node.NewServerConfig(&configServer{ch}), vflag.NewAuthorizerOrDie())); err != nil {
diff --git a/runtimes/google/rt/rt.go b/runtimes/google/rt/rt.go
index 294941d..ad6cec4 100644
--- a/runtimes/google/rt/rt.go
+++ b/runtimes/google/rt/rt.go
@@ -141,7 +141,7 @@
 
 	// TODO(caprita, cnicolaou): how is this to be configured?
 	// Can it ever be anything other than a localhost/loopback address?
-	listenSpec := &ipc.ListenSpec{Protocol: "tcp", Address: "127.0.0.1:0"}
+	listenSpec := ipc.ListenSpec{Protocol: "tcp", Address: "127.0.0.1:0"}
 	if err := rt.mgmt.initMgmt(rt, listenSpec); err != nil {
 		return nil, err
 	}
diff --git a/runtimes/google/rt/sectransition/sectransition.go b/runtimes/google/rt/sectransition/sectransition.go
index 536f0f1..54c0677 100644
--- a/runtimes/google/rt/sectransition/sectransition.go
+++ b/runtimes/google/rt/sectransition/sectransition.go
@@ -48,7 +48,7 @@
 	}
 	defer server.Stop()
 
-	ep, err := server.ListenX(profiles.LocalListenSpec)
+	ep, err := server.Listen(profiles.LocalListenSpec)
 	if err != nil {
 		vlog.Fatal(err)
 	}
diff --git a/runtimes/google/vtrace/vtrace_test.go b/runtimes/google/vtrace/vtrace_test.go
index 086c6fb..44b7d53 100644
--- a/runtimes/google/vtrace/vtrace_test.go
+++ b/runtimes/google/vtrace/vtrace_test.go
@@ -101,7 +101,7 @@
 	if err != nil {
 		return nil, err
 	}
-	if _, err := s.Listen("tcp", "127.0.0.1:0"); err != nil {
+	if _, err := s.Listen(ipc.ListenSpec{Protocol: "tcp", Address: "127.0.0.1:0"}); err != nil {
 		return nil, err
 	}
 
diff --git a/security/agent/server/server.go b/security/agent/server/server.go
index 3133501..8bfa762 100644
--- a/security/agent/server/server.go
+++ b/security/agent/server/server.go
@@ -13,6 +13,7 @@
 import (
 	"io"
 	"os"
+
 	"veyron.io/veyron/veyron/lib/unixfd"
 	"veyron.io/veyron/veyron2"
 	"veyron.io/veyron/veyron2/ipc"
@@ -59,7 +60,8 @@
 				return
 			}
 			if err == nil {
-				_, err = s.Listen(clientAddr.Network(), clientAddr.String())
+				spec := ipc.ListenSpec{Protocol: clientAddr.Network(), Address: clientAddr.String()}
+				_, err = s.Listen(spec)
 			}
 			if err != nil {
 				vlog.Infof("Error accepting connection: %v", err)
diff --git a/security/agent/test/main.go b/security/agent/test/main.go
index 384011c..08a3aab 100644
--- a/security/agent/test/main.go
+++ b/security/agent/test/main.go
@@ -49,7 +49,7 @@
 
 	serverPong := NewServerPingPong(&pongd{})
 
-	if endpoint, err := s.Listen("tcp", "127.0.0.1:0"); err == nil {
+	if endpoint, err := s.Listen(ipc.ListenSpec{Protocol: "tcp", Address: "127.0.0.1:0"}); err == nil {
 		fmt.Printf("Listening at: %v\n", endpoint)
 	} else {
 		log.Fatal("error listening to service: ", err)
diff --git a/services/identity/identityd/main.go b/services/identity/identityd/main.go
index f8ec17c..4e2d8d8 100644
--- a/services/identity/identityd/main.go
+++ b/services/identity/identityd/main.go
@@ -187,7 +187,7 @@
 	if err != nil {
 		return nil, nil, fmt.Errorf("failed to create new ipc.Server: %v", err)
 	}
-	ep, err := server.ListenX(static.ListenSpec)
+	ep, err := server.Listen(static.ListenSpec)
 	if err != nil {
 		return nil, nil, fmt.Errorf("server.Listen(%v) failed: %v", static.ListenSpec, err)
 	}
diff --git a/services/identity/revocation/revoker_test.go b/services/identity/revocation/revoker_test.go
index 7684c15..1cb86fa 100644
--- a/services/identity/revocation/revoker_test.go
+++ b/services/identity/revocation/revoker_test.go
@@ -29,7 +29,7 @@
 	if err != nil {
 		t.Fatalf("rt.R().NewServer: %s", err)
 	}
-	dischargerEP, err := dischargerServer.ListenX(profiles.LocalListenSpec)
+	dischargerEP, err := dischargerServer.Listen(profiles.LocalListenSpec)
 	if err != nil {
 		t.Fatalf("dischargerServer.Listen failed: %v", err)
 	}
diff --git a/services/mgmt/application/applicationd/main.go b/services/mgmt/application/applicationd/main.go
index 5288fd6..e815fa4 100644
--- a/services/mgmt/application/applicationd/main.go
+++ b/services/mgmt/application/applicationd/main.go
@@ -35,7 +35,7 @@
 		vlog.Fatalf("NewDispatcher() failed: %v", err)
 	}
 
-	endpoint, err := server.ListenX(roaming.ListenSpec)
+	endpoint, err := server.Listen(roaming.ListenSpec)
 	if err != nil {
 		vlog.Fatalf("Listen(%s) failed: %v", roaming.ListenSpec, err)
 	}
diff --git a/services/mgmt/application/impl/impl_test.go b/services/mgmt/application/impl/impl_test.go
index 3f18ccd..672a336 100644
--- a/services/mgmt/application/impl/impl_test.go
+++ b/services/mgmt/application/impl/impl_test.go
@@ -41,7 +41,7 @@
 		t.Fatalf("NewDispatcher() failed: %v", err)
 	}
 
-	endpoint, err := server.ListenX(profiles.LocalListenSpec)
+	endpoint, err := server.Listen(profiles.LocalListenSpec)
 	if err != nil {
 		t.Fatalf("Listen(%s) failed: %v", profiles.LocalListenSpec, err)
 	}
diff --git a/services/mgmt/binary/binaryd/main.go b/services/mgmt/binary/binaryd/main.go
index 6b2ed31..3a74c7c 100644
--- a/services/mgmt/binary/binaryd/main.go
+++ b/services/mgmt/binary/binaryd/main.go
@@ -73,7 +73,7 @@
 		vlog.Errorf("NewDispatcher(%v, %v, %v) failed: %v", *root, defaultDepth, auth, err)
 		return
 	}
-	endpoint, err := server.ListenX(roaming.ListenSpec)
+	endpoint, err := server.Listen(roaming.ListenSpec)
 	if err != nil {
 		vlog.Errorf("Listen(%s) failed: %v", roaming.ListenSpec, err)
 		return
diff --git a/services/mgmt/binary/impl/impl_test.go b/services/mgmt/binary/impl/impl_test.go
index 0f39ea9..ba13d5d 100644
--- a/services/mgmt/binary/impl/impl_test.go
+++ b/services/mgmt/binary/impl/impl_test.go
@@ -111,7 +111,7 @@
 	if err != nil {
 		t.Fatalf("NewDispatcher(%v, %v, %v) failed: %v", root, depth, nil, err)
 	}
-	endpoint, err := server.ListenX(profiles.LocalListenSpec)
+	endpoint, err := server.Listen(profiles.LocalListenSpec)
 	if err != nil {
 		t.Fatalf("Listen(%s) failed: %v", profiles.LocalListenSpec, err)
 	}
diff --git a/services/mgmt/build/buildd/main.go b/services/mgmt/build/buildd/main.go
index 01527ac..b46e98c 100644
--- a/services/mgmt/build/buildd/main.go
+++ b/services/mgmt/build/buildd/main.go
@@ -31,7 +31,7 @@
 		return
 	}
 	defer server.Stop()
-	endpoint, err := server.ListenX(roaming.ListenSpec)
+	endpoint, err := server.Listen(roaming.ListenSpec)
 	if err != nil {
 		vlog.Errorf("Listen(%s) failed: %v", roaming.ListenSpec, err)
 		return
diff --git a/services/mgmt/build/impl/impl_test.go b/services/mgmt/build/impl/impl_test.go
index 14b11d5..dd4be30 100644
--- a/services/mgmt/build/impl/impl_test.go
+++ b/services/mgmt/build/impl/impl_test.go
@@ -53,7 +53,7 @@
 	if err != nil {
 		t.Fatalf("NewServer() failed: %v", err)
 	}
-	endpoint, err := server.ListenX(profiles.LocalListenSpec)
+	endpoint, err := server.Listen(profiles.LocalListenSpec)
 	if err != nil {
 		t.Fatalf("Listen(%s) failed: %v", profiles.LocalListenSpec, err)
 	}
diff --git a/services/mgmt/debug/server.go b/services/mgmt/debug/server.go
index c36d972..95b8c13 100644
--- a/services/mgmt/debug/server.go
+++ b/services/mgmt/debug/server.go
@@ -12,7 +12,7 @@
 )
 
 // StartDebugServer starts a debug server.
-func StartDebugServer(rt veyron2.Runtime, listenSpec *ipc.ListenSpec, logsDir string, auth security.Authorizer) (string, func(), error) {
+func StartDebugServer(rt veyron2.Runtime, listenSpec ipc.ListenSpec, logsDir string, auth security.Authorizer) (string, func(), error) {
 	if len(logsDir) == 0 {
 		return "", nil, fmt.Errorf("logs directory missing")
 	}
@@ -21,7 +21,7 @@
 	if err != nil {
 		return "", nil, fmt.Errorf("failed to start debug server: %v", err)
 	}
-	endpoint, err := server.ListenX(listenSpec)
+	endpoint, err := server.Listen(listenSpec)
 	if err != nil {
 		return "", nil, fmt.Errorf("failed to listen on %s: %v", listenSpec, err)
 	}
diff --git a/services/mgmt/lib/binary/impl_test.go b/services/mgmt/lib/binary/impl_test.go
index cf8e7c0..ae29582 100644
--- a/services/mgmt/lib/binary/impl_test.go
+++ b/services/mgmt/lib/binary/impl_test.go
@@ -45,7 +45,7 @@
 	if err != nil {
 		t.Fatalf("NewDispatcher(%v, %v, %v) failed: %v", root, depth, nil, err)
 	}
-	endpoint, err := server.ListenX(profiles.LocalListenSpec)
+	endpoint, err := server.Listen(profiles.LocalListenSpec)
 	if err != nil {
 		t.Fatalf("Listen(%s) failed: %v", profiles.LocalListenSpec, err)
 	}
diff --git a/services/mgmt/logreader/impl/common_test.go b/services/mgmt/logreader/impl/common_test.go
index 1d96792..c81320b 100644
--- a/services/mgmt/logreader/impl/common_test.go
+++ b/services/mgmt/logreader/impl/common_test.go
@@ -15,7 +15,7 @@
 		t.Fatalf("NewServer failed: %v", err)
 		return nil, "", err
 	}
-	endpoint, err := server.ListenX(profiles.LocalListenSpec)
+	endpoint, err := server.Listen(profiles.LocalListenSpec)
 	if err != nil {
 		t.Fatalf("Listen failed: %v", err)
 		return nil, "", err
diff --git a/services/mgmt/node/impl/util_test.go b/services/mgmt/node/impl/util_test.go
index 8c93dba..b1d1da4 100644
--- a/services/mgmt/node/impl/util_test.go
+++ b/services/mgmt/node/impl/util_test.go
@@ -44,7 +44,7 @@
 	if err != nil {
 		t.Fatalf("NewMountTable() failed: %v", err)
 	}
-	endpoint, err := server.ListenX(profiles.LocalListenSpec)
+	endpoint, err := server.Listen(profiles.LocalListenSpec)
 	if err != nil {
 		t.Fatalf("Listen(%s) failed: %v", profiles.LocalListenSpec, err)
 	}
@@ -116,7 +116,7 @@
 	if err != nil {
 		vlog.Fatalf("NewServer() failed: %v", err)
 	}
-	endpoint, err := server.ListenX(profiles.LocalListenSpec)
+	endpoint, err := server.Listen(profiles.LocalListenSpec)
 	if err != nil {
 		vlog.Fatalf("Listen(%s) failed: %v", profiles.LocalListenSpec, err)
 	}
diff --git a/services/mgmt/node/noded/main.go b/services/mgmt/node/noded/main.go
index 3292dfe..af584b4 100644
--- a/services/mgmt/node/noded/main.go
+++ b/services/mgmt/node/noded/main.go
@@ -46,7 +46,7 @@
 		vlog.Fatalf("NewServer() failed: %v", err)
 	}
 	defer server.Stop()
-	endpoint, err := server.ListenX(roaming.ListenSpec)
+	endpoint, err := server.Listen(roaming.ListenSpec)
 	if err != nil {
 		vlog.Fatalf("Listen(%s) failed: %v", roaming.ListenSpec, err)
 	}
diff --git a/services/mgmt/pprof/client/proxy_test.go b/services/mgmt/pprof/client/proxy_test.go
index 31ae371..9c5f251 100644
--- a/services/mgmt/pprof/client/proxy_test.go
+++ b/services/mgmt/pprof/client/proxy_test.go
@@ -33,7 +33,7 @@
 		t.Fatalf("failed to start server: %v", err)
 	}
 	defer s.Stop()
-	endpoint, err := s.ListenX(profiles.LocalListenSpec)
+	endpoint, err := s.Listen(profiles.LocalListenSpec)
 	if err != nil {
 		t.Fatalf("failed to listen: %v", err)
 	}
diff --git a/services/mgmt/profile/impl/impl_test.go b/services/mgmt/profile/impl/impl_test.go
index 840f09b..ec4a864 100644
--- a/services/mgmt/profile/impl/impl_test.go
+++ b/services/mgmt/profile/impl/impl_test.go
@@ -55,7 +55,7 @@
 	if err != nil {
 		t.Fatalf("NewDispatcher() failed: %v", err)
 	}
-	endpoint, err := server.ListenX(profiles.LocalListenSpec)
+	endpoint, err := server.Listen(profiles.LocalListenSpec)
 	if err != nil {
 		t.Fatalf("Listen(%s) failed: %v", profiles.LocalListenSpec, err)
 	}
diff --git a/services/mgmt/profile/profiled/main.go b/services/mgmt/profile/profiled/main.go
index 0d88909..3aee540 100644
--- a/services/mgmt/profile/profiled/main.go
+++ b/services/mgmt/profile/profiled/main.go
@@ -35,7 +35,7 @@
 		vlog.Fatalf("NewDispatcher() failed: %v", err)
 	}
 
-	endpoint, err := server.ListenX(roaming.ListenSpec)
+	endpoint, err := server.Listen(roaming.ListenSpec)
 	if err != nil {
 		vlog.Fatalf("Listen(%s) failed: %v", roaming.ListenSpec, err)
 	}
diff --git a/services/mgmt/root/rootd/main.go b/services/mgmt/root/rootd/main.go
index 58b699f..1b93942 100644
--- a/services/mgmt/root/rootd/main.go
+++ b/services/mgmt/root/rootd/main.go
@@ -19,7 +19,7 @@
 	}
 	defer server.Stop()
 	dispatcher := impl.NewDispatcher()
-	ep, err := server.ListenX(roaming.ListenSpec)
+	ep, err := server.Listen(roaming.ListenSpec)
 	if err != nil {
 		vlog.Errorf("Listen(%s) failed: %v", roaming.ListenSpec, err)
 		return
diff --git a/services/mgmt/stats/impl/stats_invoker_test.go b/services/mgmt/stats/impl/stats_invoker_test.go
index 02d0b10..2b5b4ae 100644
--- a/services/mgmt/stats/impl/stats_invoker_test.go
+++ b/services/mgmt/stats/impl/stats_invoker_test.go
@@ -34,7 +34,7 @@
 		t.Fatalf("NewServer failed: %v", err)
 		return "", nil
 	}
-	endpoint, err := server.ListenX(profiles.LocalListenSpec)
+	endpoint, err := server.Listen(profiles.LocalListenSpec)
 	if err != nil {
 		t.Fatalf("Listen failed: %v", err)
 		return "", nil
diff --git a/services/mounttable/lib/mounttable_test.go b/services/mounttable/lib/mounttable_test.go
index 1780222..9989fd5 100644
--- a/services/mounttable/lib/mounttable_test.go
+++ b/services/mounttable/lib/mounttable_test.go
@@ -172,7 +172,7 @@
 		boom(t, "NewMountTable: %v", err)
 	}
 	// Start serving on a loopback address.
-	e, err := server.ListenX(profiles.LocalListenSpec)
+	e, err := server.Listen(profiles.LocalListenSpec)
 	if err != nil {
 		boom(t, "Failed to Listen mount table: %s", err)
 	}
@@ -190,7 +190,7 @@
 		boom(t, "r.NewServer: %s", err)
 	}
 	// Start serving on a loopback address.
-	e, err := server.ListenX(profiles.LocalListenSpec)
+	e, err := server.Listen(profiles.LocalListenSpec)
 	if err != nil {
 		boom(t, "Failed to Listen mount table: %s", err)
 	}
diff --git a/services/mounttable/lib/neighborhood_test.go b/services/mounttable/lib/neighborhood_test.go
index a935c44..07146da 100644
--- a/services/mounttable/lib/neighborhood_test.go
+++ b/services/mounttable/lib/neighborhood_test.go
@@ -35,7 +35,7 @@
 	defer server.Stop()
 
 	// Start serving on a loopback address.
-	e, err := server.ListenX(profiles.LocalListenSpec)
+	e, err := server.Listen(profiles.LocalListenSpec)
 	if err != nil {
 		boom(t, "Failed to Listen mount table: %s", err)
 	}
diff --git a/services/mounttable/mounttabled/mounttable.go b/services/mounttable/mounttabled/mounttable.go
index b76f0f7..7a4be80 100644
--- a/services/mounttable/mounttabled/mounttable.go
+++ b/services/mounttable/mounttabled/mounttable.go
@@ -37,7 +37,7 @@
 		vlog.Errorf("r.NewMountTable failed: %v", err)
 		os.Exit(1)
 	}
-	mtEndpoint, err := mtServer.ListenX(roaming.ListenSpec)
+	mtEndpoint, err := mtServer.Listen(roaming.ListenSpec)
 	if err != nil {
 		vlog.Errorf("mtServer.Listen failed: %v", err)
 		os.Exit(1)
@@ -53,7 +53,7 @@
 		naming.JoinAddressName(mtEndpoint.String(), ""))
 
 	if len(*nhName) > 0 {
-		neighborhoodListenSpec := *roaming.ListenSpec
+		neighborhoodListenSpec := roaming.ListenSpec
 		// The ListenSpec code ensures that we have a valid address here.
 		host, port, _ := net.SplitHostPort(roaming.ListenSpec.Address)
 		if port != "" {
@@ -65,7 +65,7 @@
 			os.Exit(1)
 		}
 		defer nhServer.Stop()
-		if _, err := nhServer.ListenX(&neighborhoodListenSpec); err != nil {
+		if _, err := nhServer.Listen(neighborhoodListenSpec); err != nil {
 			vlog.Errorf("nhServer.Listen failed: %v", err)
 			os.Exit(1)
 		}
diff --git a/tools/application/impl_test.go b/tools/application/impl_test.go
index 46d1966..b6d5d64 100644
--- a/tools/application/impl_test.go
+++ b/tools/application/impl_test.go
@@ -80,7 +80,7 @@
 		t.Errorf("NewServer failed: %v", err)
 		return nil, nil, err
 	}
-	endpoint, err := server.ListenX(profiles.LocalListenSpec)
+	endpoint, err := server.Listen(profiles.LocalListenSpec)
 	if err != nil {
 		t.Errorf("Listen failed: %v", err)
 		return nil, nil, err
diff --git a/tools/binary/impl_test.go b/tools/binary/impl_test.go
index 8667c3d..3de1f9a 100644
--- a/tools/binary/impl_test.go
+++ b/tools/binary/impl_test.go
@@ -89,7 +89,7 @@
 		t.Errorf("NewServer failed: %v", err)
 		return nil, nil, err
 	}
-	endpoint, err := server.ListenX(profiles.LocalListenSpec)
+	endpoint, err := server.Listen(profiles.LocalListenSpec)
 	if err != nil {
 		t.Errorf("Listen failed: %v", err)
 		return nil, nil, err
diff --git a/tools/build/impl_test.go b/tools/build/impl_test.go
index 15ef3eb..4ce3e9e 100644
--- a/tools/build/impl_test.go
+++ b/tools/build/impl_test.go
@@ -44,7 +44,7 @@
 	if err != nil {
 		t.Fatalf("NewServer failed: %v", err)
 	}
-	endpoint, err := server.ListenX(profiles.LocalListenSpec)
+	endpoint, err := server.Listen(profiles.LocalListenSpec)
 	if err != nil {
 		t.Fatalf("Listen(%s) failed: %v", profiles.LocalListenSpec, err)
 	}
diff --git a/tools/mounttable/impl_test.go b/tools/mounttable/impl_test.go
index 0d05b13..4e23910 100644
--- a/tools/mounttable/impl_test.go
+++ b/tools/mounttable/impl_test.go
@@ -68,7 +68,7 @@
 		t.Errorf("NewServer failed: %v", err)
 		return nil, nil, err
 	}
-	endpoint, err := server.ListenX(profiles.LocalListenSpec)
+	endpoint, err := server.Listen(profiles.LocalListenSpec)
 	if err != nil {
 		t.Errorf("Listen failed: %v", err)
 		return nil, nil, err
diff --git a/tools/profile/impl_test.go b/tools/profile/impl_test.go
index d188d48..99f2562 100644
--- a/tools/profile/impl_test.go
+++ b/tools/profile/impl_test.go
@@ -91,7 +91,7 @@
 		t.Errorf("NewServer failed: %v", err)
 		return nil, nil, err
 	}
-	endpoint, err := server.ListenX(profiles.LocalListenSpec)
+	endpoint, err := server.Listen(profiles.LocalListenSpec)
 	if err != nil {
 		t.Errorf("Listen failed: %v", err)
 		return nil, nil, err
diff --git a/tools/vrpc/impl_test.go b/tools/vrpc/impl_test.go
index a1c27a5..83f0e58 100644
--- a/tools/vrpc/impl_test.go
+++ b/tools/vrpc/impl_test.go
@@ -133,7 +133,7 @@
 		return nil, nil, err
 	}
 
-	endpoint, err := server.ListenX(profiles.LocalListenSpec)
+	endpoint, err := server.Listen(profiles.LocalListenSpec)
 	if err != nil {
 		t.Errorf("Listen failed: %v", err)
 		return nil, nil, err