Please error, or at least warn, when a managed type is included in INetworkSerializeByMemcpy
Mantenedores costumam responder em até 2 dias
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Facilidade para iniciantes
- 48/100
- Tipo de issue
- Funcionalidade
- Clareza
- Razoavelmente clara
- Status de atividade
- Pouca atividade
- Stack de tecnologia
- csharp
- Domínio
- networking
Direção de pesquisa
Comece localizando a definição de INetworkSerializeByMemcpy e seus testes de validação ou serialização. Rastreie como os tipos que o implementam são verificados durante a compilação ou em tempo de execução e, em seguida, adicione cobertura para campos string e outros campos gerenciados; considera-se concluído quando esses tipos produzirem um erro ou aviso de build em vez de uma serialização memcpy insegura.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Is your feature request related to a problem? Please describe.
My coworker was unfamiliar with INetworkSerializeByMemcpy and the FixedStringNNNBytes types, and added a string field to an existing INetworkSerializeByMemcpy struct. This caused me great headaches (it made it into a publicly released patch), trying to track down segfault heap corruption that only showed up in very specific multiplayer circumstances (the string was normally null, which probably masked the issue).
Describe the solution you'd like
Please cause a build error when a managed type (a class, a string, or the like) is included in an INetworkSerializeByMemcpy type. I cannot think of any use case where it would be valid or intended to serialize a managed GC pointer by memcpy. At least a warning if nothing else.
It doesn't have to be perfect, even just checking for string would be lovely - string specifically is such a massive footgun, it's so easy to accidentally include and think it'll work fine. The fact it crashes later on via unrelated segfault heap corruption bringing down the editor, instead of a C# Exception, is especially rough.
- Linguagem predominante
- C#
- Estrelas
- 2.3k
- Forks
- 464
- Merge médio
- 2d 18h
- PRs com merge (30d)
- 15
Preparar o ambiente
- Sem Dockerfile nem arquivo Docker Compose
- Tem um modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de Unity-Technologies/com.unity.netcode.gameobjects
-
NetworkList changes made since the last tick are applied twice on a newly synchronized clientAbertastat:awaiting-triage stat:reply-needed type:bug
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 55/100
Unity-Technologies/com.unity.netcode.gameobjects#4179 ·
Mantenedores costumam responder em até 2 dias
-
Dedicated server: mixed-authority NetworkObject is removed from NetworkTransformUpdate, so its owner-authoritative NetworkTransform never updates server-sideTalvez já em andamento @NoelStephensUnity assumiu há 11 dias. Abertastat:imported stat:reply-needed type:bug
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 68/100
Unity-Technologies/com.unity.netcode.gameobjects#4159 · 5 comentários ·
Mantenedores costumam responder em até 2 dias
-
NetworkAnimator: Conditional triggered transitions to Exit node log false errorsTalvez já em andamento @NoelStephensUnity assumiu há 195 dias. Abertastat:awaiting-response stat:awaiting-triage stat:Investigating type:bug
Unity-Technologies/com.unity.netcode.gameobjects#3912 · 7 comentários · 1 responsável ·
Mantenedores costumam responder em até 2 dias
-
Tracking type:feature-2.x
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 35/100
Unity-Technologies/com.unity.netcode.gameobjects#3870 · 5 comentários ·
Mantenedores costumam responder em até 2 dias
-
stat:awaiting-response stat:imported type:bug
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 38/100
Unity-Technologies/com.unity.netcode.gameobjects#3802 · 2 comentários ·
Mantenedores costumam responder em até 2 dias
Todas as issues de Unity-Technologies/com.unity.netcode.gameobjects
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 66/100
shimat/opencvsharp#2154 ·
Mantenedores costumam responder em até 1 dia
-
subsystem: UI
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 82/100
Open-Systems-Pharmacology/PK-Sim#3812 ·
Mantenedores costumam responder em até 1 dia
-
[C#]:主页联网更新的提示投稿横幅指向错误Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
PCL-Community/PCL-CE#3652 ·
Mantenedores costumam responder em até 1 dia
-
bug effort:S P3
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
nightscout/nocturne#2012 ·
Mantenedores costumam responder em até 1 dia