golang
文章平均质量分 67
路边闲人2
混迹于csdn,不求显山露水,只求共享知识。
展开
-
golang程序能不能用LD_PRELOAD进行hook?
golang自己实现了相关的libc里面的函数,LD_PRELOAD环境变量其实是 libc里面的功能,可以在加载函数时,优先调用 LD_PRELOAD指定的so里面的函数。运行nc ,可以看到,hook 是正常工作的。最简单的http服务。用golang 进行测试。完全没有hook上。原创 2023-05-26 10:26:16 · 1319 阅读 · 0 评论 -
golang 程序运行出错,version `GLIBC_2.32‘ not found
golang 理论上是可以针对各种不同的操作系统生成对应的程序的,即自带交叉编译功能。在linux上,如果不是本机编译的可能出现 GLIBC 版本号对不上的情况。此时需要指定 CGO_ENABLED=0 这个选项即可解决问题。如下所示: kcptun的编译命令。原创 2023-01-29 15:33:56 · 7993 阅读 · 0 评论 -
golang用5分钟实现一个tcp relay转发代理器
golang 实现一些网络编程非常简单,实现一个tcp tunnel就在5分钟以内。核心函数就2个。一个是tcpListener 开启tcp监听一个是handleLocalTcp,一个tcp连接来了之后,由这个函数进行处理,开启一个tcp客户端,将流量在两个连接之间传输。tcp tunnel的工作模式如下图所示:package mainimport ( "github.com/urfave/cli" "io" "log" "net" "os"...原创 2020-07-29 23:50:18 · 3052 阅读 · 0 评论 -
goland 开发相关小技巧
1.生成Linux下的程序GOARCH=amd64;GOOS=linux2.生成无调试符号的更小的可执行文件默认参数是 debug 版,加编译参数-ldflags "-w -s"才是 release. -w 为去掉调试信息,-s 为去掉符号表,文件大小会减小。https://blog.csdn.net/hacker234/article/details/103444066https://www.v2ex.com/amp/t/561636...原创 2020-07-29 00:13:44 · 241 阅读 · 0 评论 -
golang 处理网络接收的UDP数据
一、[]byte与struct互转type CDNDispatchReq struct{ flag bool Fromsegid int32 Tosegid int32};func handle_DISPATCH(data []byte, datalen int, ip net.IP, port int) int { req := *(**CDNDispatc...原创 2019-12-01 12:29:42 · 2550 阅读 · 0 评论 -
golang 通过net.UDPConn获取UDP通信对端的IP和端口
conn.RemoteAddr()返回的是空值,需要使用下列函数,在返回值中有地址func (c *UDPConn) ReadFrom(b []byte) (int, Addr, error)ReadFrom implements the PacketConn ReadFrom method.func (c *UDPConn) ReadFromUDP(b []byte) (...原创 2019-11-18 18:31:34 · 2754 阅读 · 0 评论 -
ubuntu linux平台下vscode 安装golang tools
vscode开发golang需要安装一些tools,相关命令行如下:https://github.com/Microsoft/vscode-go/wiki/Go-tools-that-the-Go-extension-depends-ongo get -u -v github.com/ramya-rao-a/go-outlinego get -u -v github.com/ac...原创 2019-07-19 19:51:16 · 1289 阅读 · 0 评论 -
几个golang学习资源和项目
学习一门主课最好的方法就是在项目中用。下面整理几个小型项目,全部都是有视频有源码。供大家学习借鉴。1.Go并发编程案例解析视频+源码https://www.imooc.com/learn/982 https://github.com/itsmikej/imooc_logprocess/2.go开发视频网站视频+源码(源码缺最后一章)链接: https://pan.baid...原创 2019-11-03 23:57:37 · 295 阅读 · 0 评论 -
golang 实现http mock server
源码来自https://github.com/deis/mock-http-server主要作用是开启一个本地的监听8080端口的http服务器,能够打印客户端的请求,方便进行调试。package mainimport ( "fmt" "log" "net/http")// Log the HTTP requestfunc logHandler(w http.R...原创 2019-04-28 14:06:58 · 2767 阅读 · 0 评论 -
golang 实现的json mock server
https://github.com/tkc/go-json-server用golang实现的json mock server.可以模拟一个http服务器,根据自定义的路由,返回指定的json。原创 2019-04-28 14:02:23 · 786 阅读 · 0 评论 -
VS Code 调试 Golang 出现 Failed to continue: Check the debug console for details
这是默认的launch.json,"program": "${fileDirname}" 指示从当前文件所在的目录作为go 程序的目录。go程序是以目录为单位的,编译的时候一个文件中的全部.go都参与编译,只能有一个文件中有main函数。如果vs code 当前打开的文件与主程序不在同一个目录下,按F5开始调试时就会报Failed to continue: Check the deb...原创 2019-02-20 01:06:49 · 13137 阅读 · 0 评论 -
go语言 import当前目录下的package
当前目录结构:/main.go/dataGetClient.go/mcommlib/MPair.gomain.go 和 dataGetClient.go 里面是package main/mcommlib/MPair.go里面是package mcommlibdataGetClient.go 会引用到/mcommlib/MPair.go里面的内容,应该这么写...原创 2019-02-09 19:05:38 · 10629 阅读 · 2 评论 -
notepad++中对go的语法高亮设置
参考 https://blog.csdn.net/liang19890820/article/details/53102322 1.下载 go.xml,将其拷贝至 Notepad++ 安装目录下的 plugins\APIs 下面(例如:D:\Program Files\Notepad++\plugins\APIs)。2.下载 userDefineLang.xml,在其内容最前面添加 &l...原创 2019-01-21 21:30:40 · 2007 阅读 · 1 评论 -
用vscode开发和调试golang超简单教程
首先安装golang开发环境,这个不用说。到这个页面下载golang 的安装包https://studygolang.com/dl ,再安装就可以了。一、下载并安装vscodehttps://code.visualstudio.com/二、安装Go插件在vscode插件中搜索Go的开发插件,安装后如图所示三、下载调试工具 使用vscode加载go...原创 2018-11-26 00:02:28 · 114121 阅读 · 11 评论