Search Issue Tracker

Fixed in 2019.3.X

Fixed in 2017.4.X, 2018.4.X, 2019.1.X, 2019.2.X

Votes

0

Found in

2017.4.0f1

2017.4.26f1

2018.3.0a1

2018.4.0f1

2019.1.0a1

2019.2.0a1

2019.3.0a1

Issue ID

1150549

Regression

No

[IL2CPP] The sockaddr_un structure is not properly filled when trying to bind or connect to a Unix-domain socket

IL2CPP

-

The IL2CPP runtime does not properly fill the sockaddr_un structure that is passed to the bind() or connect() system calls when trying to bind or connect to a Unix-domain socket

To reproduce:

1. Download attached "UnixSocketFailRepro.zip" project and open in Unity
2. Enter to Play mode
3. Note that Console prints these messages:

"Socket path: /tmp/test.socket"
"Testing managed bind call."
"Testing data transfer (managed listen + managed connect)"
"Transferred managed: "MANAGED STRING (This means it works with Unity's implementation)""

4. Exit from Play mode
5. Build for Standalone (IL2CPP), iOS or Android (IL2CPP)
6. Deploy the Xcode project to the iOS device, run Standalone Build or deploy .apk on Android device

Expected Results: Logs shows the same messages as on Unity Editor Console
Actual Results: Observe that right after the log "Testing managed bind call" it prints:

"FAILED BIND with exception: System.Net.Sockets.SocketException: Access denied".

Notes:
- This issue appears on Standalone (IL2CPP), iOS and Android (IL2CPP)
- On Mono Scripting Backend everything seems to work as Expected

Tested with:
- iPhone XS, iOS: 12.0 - Reproduced
- iPhone 8 Plus, iOS: 12.0 - Reproduced
- iPhone 7 Plus, iOS: 12.0 - Reproduced
- Huawei P20 Pro (CLT-L29), Android 8.1.0, CPU: HiSilicon Kirin 970, GPU: Mali-G72 - Reproduced

Reproduced on Unity 2017.4.0f1, 2017.4.27f1, 2018.3.14f1, 2018.4.0f1, 2019.1.3f1, 2019.2.0b2 and 2019.3.0a3

Comments (1)

  1. hbonly

    Jul 16, 2019 08:54

    same problem

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.