0x00007ffff7ade419 in memcpy () from /lib/libc.so.6
先看gdb跟踪过程
Hardware watchpoint 3: pad_front
Old value = 4
New value = 15
breath_travel (pRoot=0x603030, pQueue=0x603010) at print_tree_final.c:206
206 if((qNode->blank == 1))
(gdb) n
228 if(pad_front == 0)
(gdb) n
235 char *old_buf=buf_branch;
(gdb) n
236 printf("%*s%*d%*s",pad_front*pad_num," ",pad_num,qNode->t_node->value,(1+pad_front)*pad_num," ");
(gdb) n
238 sprintf(new_buf,"%s","123");
(gdb) n
Hardware watchpoint 2: child_depth
Old value = 2
New value = 3355185
0x00007ffff7ade419 in memcpy () from /lib/libc.so.6
我很奇怪,为啥int child = 2的值会被sprintf语句改写,一直想不明白。搜索了下,发现new_buf没分配空间造成的,所以才会说memcpy内存复制错误,可能覆盖了其它数据区域。
我声明 new_buf方法是
char *new_buf;
改为
char *new_buf=(char*)malloc(100);
问题解决。怪不得数组初始化经常是
char buffer[1024];
这样的。应该是等同上面那句malloc语句。如果指针和数组没有初始化,就很可能覆盖了其它区域。
0x00007ffff7ade419 in memcpy () from /lib/libc.so.6相关推荐
- 【Android 逆向】Android 进程注入工具开发 ( 注入代码分析 | 获取 远程 目标进程 中的 /system/lib/libc.so 动态库中的 mmap 函数地址 )
文章目录 一.获取 远程 目标进程 中的 /system/lib/libc.so 动态库中的 mmap 函数地址 二.从 /proc/pid/maps 文件中获取 指定 进程 中的 /system/l ...
- 【Android 逆向】Android 中常用的 so 动态库 ( /system/lib/libc.so 动态库 | libc++.so 动态库 | libstdc++.so 动态库 )
文章目录 一.拷贝并分析 Android 中的 /system/lib/libc.so 动态库 二.拷贝并分析 Android 中的 /system/lib/libc++.so 动态库 三.拷贝并分析 ...
- 解决strings: '/lib/libc.so.6': No such file
[root@uranuspreapp30 opt]# strings /lib64/libc.so.6 | grep GLIBC |tail -n 8 strings: '/lib64/libc.so ...
- arm-linux-gcc /lib/libc.so.6,链接器 – 找不到/lib/libc.so.6
我正在交叉编译一个应用程序,但链接爆炸与它的错误 "cannot find /lib/libc.so.6". 它应该使用的libc.so.6位于/home/work/worldco ...
- 嵌入式linux开发,/lib/libc.so.6: version `GLIBC_2.17‘ not found (required by /.../lib/libpaho-mqtt3a.so.1)
一.问题描述. 嵌入式linux开发,使用高版本交叉编译工具,编译应用程序,在arm板中运行提示:/lib/libc.so.6: version `GLIBC_2.17' not found (req ...
- memcpy的F libc : FORTIFY: memcpy: prevented异常分析处理
在调试中遇到: 崩溃信息: --------- beginning of crash F libc : FORTIFY: memcpy: prevented 4294967295-byte wr ...
- Linux下coredump调试1:使用
李迟按: 调试是程序员的一项基本能力,经历过大大小小的实战,随着见识的增长,只要用心留意并做总结,相信调试的能力会越来越好.写程序不可能没有bug,只是bug容易不容易被发现,bug的危害大不大.笔者 ...
- 等号赋值与memcpy的效率问题
转自:http://www.aiuxian.com/article/p-1309055.html 偶尔看到一个说法,说,小内存的拷贝,使用等号直接赋值比memcpy快得多.结合自己搜集到的资料,整理成 ...
- Linux中的libc和glibc
一.libc库 Linux平台提供的C标准库包括: 一组头文件,定义了很多类型和宏,声明了很多库函数.这些头文件放在哪些目录下取决于不同的编译器,stdarg.h和stddef.h位于/usr/lib ...
最新文章
- mongodb php代码实例,MongoDB文档的更新(php代码实例)
- 【Linux】scp“免密” 远程copy较多文件
- [html] 如何在不同的端口间共享cookie?
- 抖音直播APP软件系统为什么能这么火?反映出的问题又会是什么?
- 【开发工具】【i2c-tools】I2C总线调试工具(i2c-tools)的安装与使用
- Linux基础学习记录
- 材料科学需要用计算机吗,计算机在材料科学中的运用分析
- DM7在linux下部署
- Undefined和Null的区别
- WPF - Visual调试工具Snoop
- AlertManager实现webhook告警(使用Postman测试)
- Win7电脑上如何增加磁盘分区?
- 【CV】FPN:用于目标检测的特征金字塔网络
- XTM计算机辅助翻译,计算机辅助翻译原理与实践
- 生成特定分贝的音频波形
- 在编写QT时出现:程序异常结束。 The process was ended forcefully.
- 【系统】WinXP/Win7x86/Win7x64 地址汇总 2014.7
- python五子棋小游戏程序源码
- php导出excel2007实例,php导入导出excel实例
- TeXstudio 文字下方全是红色波浪线