We had a data race, since we were accessing to the isAuthenticatedCalls
map without locking, fix this avoiding lock/unlock dance.
WARNING: DATA RACE
Read at 0x00c0001a03f0 by goroutine 311:
runtime.mapaccess2_faststr()
/opt/hostedtoolcache/go/1.23.0/x64/src/runtime/map_faststr.go:117 +0x0
github.com/ubuntu/authd/examplebroker.(*Broker).EndSession()
/home/runner/work/authd/authd/examplebroker/broker.go:733 +0xf9
github.com/ubuntu/authd/examplebroker.(*Bus).EndSession()
/home/runner/work/authd/authd/examplebroker/dbus.go:115 +0x5b
runtime.call32()
/opt/hostedtoolcache/go/1.23.0/x64/src/runtime/asm_amd64.s:776 +0x42
reflect.Value.Call()
/opt/hostedtoolcache/go/1.23.0/x64/src/reflect/value.go:365 +0xb5
github.com/godbus/dbus/v5.exportedMethod.Call()
/home/runner/go/pkg/mod/github.com/godbus/dbus/[email protected]/default_handler.go:128 +0x239
github.com/godbus/dbus/v5.(*exportedMethod).Call()
<autogenerated>:1 +0x84
github.com/godbus/dbus/v5.(*Conn).handleCall()
/home/runner/go/pkg/mod/github.com/godbus/dbus/[email protected]/export.go:193 +0x6f2
github.com/godbus/dbus/v5.(*Conn).inWorker.gowrap1()
/home/runner/go/pkg/mod/github.com/godbus/dbus/[email protected]/conn.go:435 +0x44
Previous write at 0x00c0001a03f0 by goroutine 308:
runtime.mapassign_faststr()
/opt/hostedtoolcache/go/1.23.0/x64/src/runtime/map_faststr.go:223 +0x0
github.com/ubuntu/authd/examplebroker.(*Broker).IsAuthenticated()
/home/runner/work/authd/authd/examplebroker/broker.go:537 +0x276
github.com/ubuntu/authd/examplebroker.(*Bus).IsAuthenticated()
/home/runner/work/authd/authd/examplebroker/dbus.go:106 +0x91
runtime.call64()
/opt/hostedtoolcache/go/1.23.0/x64/src/runtime/asm_amd64.s:777 +0x42
reflect.Value.Call()
/opt/hostedtoolcache/go/1.23.0/x64/src/reflect/value.go:365 +0xb5
github.com/godbus/dbus/v5.exportedMethod.Call()
/home/runner/go/pkg/mod/github.com/godbus/dbus/[email protected]/default_handler.go:128 +0x239
github.com/godbus/dbus/v5.(*exportedMethod).Call()
<autogenerated>:1 +0x84
github.com/godbus/dbus/v5.(*Conn).handleCall()
/home/runner/go/pkg/mod/github.com/godbus/dbus/[email protected]/export.go:193 +0x6f2
github.com/godbus/dbus/v5.(*Conn).inWorker.gowrap1()
/home/runner/go/pkg/mod/github.com/godbus/dbus/[email protected]/conn.go:435 +0x44
Goroutine 311 (running) created at:
github.com/godbus/dbus/v5.(*Conn).inWorker()
/home/runner/go/pkg/mod/github.com/godbus/dbus/[email protected]/conn.go:435 +0x46a
github.com/godbus/dbus/v5.(*Conn).Auth.gowrap1()
/home/runner/go/pkg/mod/github.com/godbus/dbus/[email protected]/auth.go:118 +0x33
Goroutine 308 (running) created at:
github.com/godbus/dbus/v5.(*Conn).inWorker()
/home/runner/go/pkg/mod/github.com/godbus/dbus/[email protected]/conn.go:435 +0x46a
github.com/godbus/dbus/v5.(*Conn).Auth.gowrap1()
/home/runner/go/pkg/mod/github.com/godbus/dbus/[email protected]/auth.go:118 +0x33
github.com/godbus/dbus/v5.(*Conn).inWorker.gowrap1()
/home/runner/go/pkg/mod/github.com/godbus/dbus/[email protected]/conn.go:435 +0x44
Previous write at 0x00c0001a03f0 by goroutine 308:
runtime.mapassign_faststr()
/opt/hostedtoolcache/go/1.23.0/x64/src/runtime/map_faststr.go:223 +0x0
github.com/ubuntu/authd/examplebroker.(*Broker).IsAuthenticated()
/home/runner/work/authd/authd/examplebroker/broker.go:537 +0x276
github.com/ubuntu/authd/examplebroker.(*Bus).IsAuthenticated()
/home/runner/work/authd/authd/examplebroker/dbus.go:106 +0x91
runtime.call64()
/opt/hostedtoolcache/go/1.23.0/x64/src/runtime/asm_amd64.s:777 +0x42
reflect.Value.Call()
/opt/hostedtoolcache/go/1.23.0/x64/src/reflect/value.go:365 +0xb5
github.com/godbus/dbus/v5.exportedMethod.Call()
/home/runner/go/pkg/mod/github.com/godbus/dbus/[email protected]/default_handler.go:128 +0x239
github.com/godbus/dbus/v5.(*exportedMethod).Call()
<autogenerated>:1 +0x84
github.com/godbus/dbus/v5.(*Conn).handleCall()
/home/runner/go/pkg/mod/github.com/godbus/dbus/[email protected]/export.go:193 +0x6f2
github.com/godbus/dbus/v5.(*Conn).inWorker.gowrap1()
/home/runner/go/pkg/mod/github.com/godbus/dbus/[email protected]/conn.go:435 +0x44
Goroutine 311 (running) created at:
github.com/godbus/dbus/v5.(*Conn).inWorker()
/home/runner/go/pkg/mod/github.com/godbus/dbus/[email protected]/conn.go:435 +0x46a
github.com/godbus/dbus/v5.(*Conn).Auth.gowrap1()
/home/runner/go/pkg/mod/github.com/godbus/dbus/[email protected]/auth.go:118 +0x33
Goroutine 308 (running) created at:
github.com/godbus/dbus/v5.(*Conn).inWorker()
/home/runner/go/pkg/mod/github.com/godbus/dbus/[email protected]/conn.go:435 +0x46a
github.com/godbus/dbus/v5.(*Conn).Auth.gowrap1()
/home/runner/go/pkg/mod/github.com/godbus/dbus/[email protected]/auth.go:118 +0x33