{"action":"opened","issue":{"url":"https://api.github.com/repos/1lann/udp-forward/issues/1","repository_url":"https://api.github.com/repos/1lann/udp-forward","labels_url":"https://api.github.com/repos/1lann/udp-forward/issues/1/labels{/name}","comments_url":"https://api.github.com/repos/1lann/udp-forward/issues/1/comments","events_url":"https://api.github.com/repos/1lann/udp-forward/issues/1/events","html_url":"https://github.com/1lann/udp-forward/issues/1","id":312267009,"number":1,"title":"Hi I found 2 problems","user":{"login":"sanguohot","id":25117034,"avatar_url":"https://avatars3.githubusercontent.com/u/25117034?v=4","gravatar_id":"","url":"https://api.github.com/users/sanguohot","html_url":"https://github.com/sanguohot","followers_url":"https://api.github.com/users/sanguohot/followers","following_url":"https://api.github.com/users/sanguohot/following{/other_user}","gists_url":"https://api.github.com/users/sanguohot/gists{/gist_id}","starred_url":"https://api.github.com/users/sanguohot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sanguohot/subscriptions","organizations_url":"https://api.github.com/users/sanguohot/orgs","repos_url":"https://api.github.com/users/sanguohot/repos","events_url":"https://api.github.com/users/sanguohot/events{/privacy}","received_events_url":"https://api.github.com/users/sanguohot/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-04-08T03:10:36Z","updated_at":"2018-04-08T03:10:36Z","closed_at":null,"author_association":"NONE","body":"1.It may create many new connections and override the older in high concurrency\r\n\t\tf.connectionsMutex.Lock()\r\n\t\tf.connections[addr.String()] = connection{\r\n\t\t\tudp:        conn,\r\n\t\t\tlastActive: time.Now(),\r\n\t\t}\r\n\t\tf.connectionsMutex.Unlock()\r\n   I think you should change to \r\n\t\tf.connectionsMutex.Lock()\r\n               if _, found := f.connections[addr.String()]; !found {\r\n\t\t        f.connections[addr.String()] = connection{\r\n\t\t\t        udp:        conn,\r\n\t\t\t       lastActive: time.Now(),\r\n                       }\r\n\t\t}\r\n\t\tf.connectionsMutex.Unlock()\r\n2.HTTP over udp proxy does not work,but command and heatbeat packets are good.this may be a problem, because my client works well when connected to server directly，but found missing page when past through the proxy,and I tested with just only a client.I am really puzzled about it.Any help would be greatly appreciated!"}}
{"actor":{"display_login":"sanguohot"}}