How to extract a fd using this library?
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Facilidade para iniciantes
- 25/100
- Tipo de issue
- Funcionalidade
- Clareza
- Razoavelmente clara
- Status de atividade
- Estagnada
- Stack de tecnologia
- go
- Domínio
- networking
Direção de pesquisa
Comece pelo ponto de entrada websocket.NetConn mostrado na issue e rastreie como o net.Conn retornado é representado. Verifique se a implementação da conexão pode expor o descritor solicitado sem depender da reflection mostrada e defina a conclusão como uma forma compatível de obter o fd inteiro.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
I am trying to keep track of some user state in my application and I would like to get an integer fd of the connection so I can hash and keep track of it in my data structure. I tried below and I get the following error
reflect: call of reflect.Value.FieldByName on zero Value
having this functionality in the connection struct would really help.
netConn := websocket.NetConn(context.Background(), conn, websocket.MessageText)
func GetFdFromConn(conn net.Conn) int {
tcpConn := reflect.Indirect(reflect.ValueOf(conn)).FieldByName("conn")
fdVal := tcpConn.FieldByName("fd")
pfdVal := reflect.Indirect(fdVal).FieldByName("pfd")
return int(pfdVal.FieldByName("Sysfd").Int())
}
- Linguagem predominante
- Go
- Estrelas
- 5.5k
- Forks
- 379
- Métricas de merge de PRs
- Nenhum PR com merge em 30d
Preparar o ambiente
Este projeto não oferece contêiner de desenvolvimento, Dockerfile nem guia de contribuição, então a configuração fica por sua conta: comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.
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 coder/websocket
-
Must not wrap io.EOFTalvez já em andamento @Yanhu007 assumiu há 182 dias. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
-
export wstestAbertaenhancement
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
-
wasm: Close with codes other than 1000 throws, so CloseNow never closesTalvez já em andamento @0pcom assumiu há 8 dias. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 20/100
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 42/100
Todas as issues de coder/websocket
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 62/100
Mantenedores costumam responder em até 1 dia
-
Add SolentaTalvez já em andamento @sharmao07 assumiu hoje. Aberta
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 85/100
slavakurilyak/awesome-ai-agents#760 ·
Mantenedores costumam responder em até 1 dia
-
enhancement
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 82/100
-
agent-review-finding bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
jordansmall/spindrift#5281 ·
Mantenedores costumam responder em até 1 dia