naked

裸函数

匿名 (未验证) 提交于 2019-12-03 00:11:01
概述    _declspec(naked)修饰可以生成一个“裸”函数, 使用后C编译器将生成不含函数框架的纯汇编代码,裸函数中什么都没有,所以也不能使用局部变量,只能全部用内嵌汇编实现。 裸函数的定义 1 void __declspec(naked) Function() 2 3 { 4 ... 5 }   _declspec(naked) 的介绍:   _declspec(naked), 就是告诉编译器,在编译的时候,不要优化代码,通俗的说就是, 没代码,完全要自己写   比如: 1 #define NAKED __declspec(naked) 2 3 void NAKED code(void) 4 { 5 __asm 6 { 7 ret 8 } 9 }   使用__declspec(naked)关键字定义函数:   1,使用 naked 关键字必须自己构建 EBP 指针 (如果用到了的话);   2,必须自己使用 RET 或 RET n 指令返回 (除非你不返回);   _delcspec(naked)用在驱动编写,C语言内嵌汇编完成一些特定功能。 实例   我们先通过一个C语言中最简单函数,然后观察反汇编代码,看看编译器为我们做了些什么    编译环境:VmWare Workstation 15 Pro、windows 7、VC++ 6.0 英文版 1 //

裸函数

北城余情 提交于 2019-11-30 08:35:09
概述    _declspec(naked)修饰可以生成一个“裸”函数, 使用后C编译器将生成不含函数框架的纯汇编代码,裸函数中什么都没有,所以也不能使用局部变量,只能全部用内嵌汇编实现。 裸函数的定义 1 void __declspec(naked) Function() 2 3 { 4 ... 5 }   _declspec(naked) 的介绍:   _declspec(naked), 就是告诉编译器,在编译的时候,不要优化代码,通俗的说就是, 没代码,完全要自己写   比如: 1 #define NAKED __declspec(naked) 2 3 void NAKED code(void) 4 { 5 __asm 6 { 7 ret 8 } 9 }   使用__declspec(naked)关键字定义函数:   1,使用 naked 关键字必须自己构建 EBP 指针 (如果用到了的话);   2,必须自己使用 RET 或 RET n 指令返回 (除非你不返回);   _delcspec(naked)用在驱动编写,C语言内嵌汇编完成一些特定功能。 实例   我们先通过一个C语言中最简单函数,然后观察反汇编代码,看看编译器为我们做了些什么    编译环境:VmWare Workstation 15 Pro、windows 7、VC++ 6.0 英文版 1 //

Use Godaddy Domain with Openshift Apps

孤街醉人 提交于 2019-11-26 16:27:02
I have been using Openshift to host my WordPress website www.51sec.org for a while. Domain 51sec.org was registered at GoDaddy and I was struggled with plain domain or naked domain 51sec.org not corrected pointing to my openshift App, although www.51sec.org is always working fine. Eventually after googled from Internet, I understood why and made it working . There are two different solutions, one is to use cloudflare domain services which is using flatten domain feature to achieve it. Another way is to configure Godaddy domain properly with forwarding option. Here are all steps for Godaddy