include <CoreFoundation/CoreFoundation.h>
#include <stdio.h>
#include <time.h>
#include <dlfcn.h>
typedef struct __CFMachPort *CFMachPortRef;
extern void * _CTServerConnectionCreate(CFAllocatorRef, int (*)(void *, CFStringRef, CFDictionaryRef, void *), int *);
extern int _CTServerConnectionSetVibratorState(int *, void *, int, int, int, int, int);
extern int _CTServerConnectionRegisterForNotification(void*, void*, int*);
extern mach_port_t _CTServerConnectionGetPort(void*);
extern void _CTServerConnectionCellMonitorStart( void*);
int callback(void *connection, CFStringRef string, CFDictionaryRef dictionary, void *data) {
printf("callback (but it never calls me back :( ))/n");
CFShow(string);
CFShow(dictionary);
return 0;
}
void sourcecallback ( CFMachPortRef port, void *msg, CFIndex size, void *info)
{
printf("Source called back/n");
}
int main() {
printf("10 seconds of pleasure!!111!!one!!!!111!!/n");
int x = 0;
void *connection = _CTServerConnectionCreate(kCFAllocatorDefault, callback, &x);
void *handle;
handle = dlopen("/System/Library/Frameworks/CoreTelephony.framework/CoreTelephony", RTLD_LOCAL | RTLD_LAZY);
void* kCTCellMonitorUpdateNotification = dlsym(handle, "kCTCellMonitorUpdateNotification");
if( kCTCellMonitorUpdateNotification== NULL)
{
printf("Could not find kCTCellMonitorUpdateNotification/n");
}
_CTServerConnectionRegisterForNotification(connection,kCTCellMonitorUpdateNotification,&x);
mach_port_t port ;
printf("%d/n", port);
port = _CTServerConnectionGetPort(connection);
printf("%d/n", port);
printf("%x/n", connection);
CFMachPortContext context = { 0, 0, NULL, NULL, NULL };
//Boolean shouldFreeInfo = false;
printf("Done/n");
CFMachPortRef ref = CFMachPortCreateWithPort(kCFAllocatorDefault,port,NULL,NULL, NULL);
CFRunLoopSourceRef rlref = CFMachPortCreateRunLoopSource ( kCFAllocatorDefault, ref, 0);
CFRunLoopRef currentRunLoop = CFRunLoopGetCurrent();
CFRunLoopAddSource(currentRunLoop, rlref, kCFRunLoopCommonModes);
_CTServerConnectionCellMonitorStart( connection);
sleep(15);
return 0;
}
相关推荐
使用Kolla部署多节点Rocky版本OpenStack
openstack命令行客户端使用,post-deploy会在 /etc/kolla/目录下生成文件admin-openrc.sh。每次使用openstack命令时执行source /etc/kolla/admin-openrc.sh(manager节点执行)source /etc/kolla/admin-openrc.sh (将文件内容复制到/etc/profile中,即可一直生效)3.2.2 开始安装kolla-ansible,要带上--ignore-installed PyYAML,否则可能会报错。
蓝牙音频安全漏洞解析:从AirPods窃听门看无线设备隐私风险
蓝牙音频协议作为现代无线音频传输的核心技术,通过无线射频实现设备间音频数据的高效传输。其工作原理基于经典的客户端-服务器架构,在连接建立后通过协议栈管理音频流的编解码与路由。这一技术的核心价值在于为用户提供了无缝的无线音频体验,但同时也引入了新的安全挑战,特别是在音频输入输出角色切换和权限管理层面。在智能耳机、移动设备等广泛应用场景中,系统层音频会话管理与蓝牙低功耗监听机制的交互,可能因权限验证逻辑缺陷导致安全边界模糊。近期备受关注的AirPods潜在窃听风险,正是此类问题的典型体现,攻击者可能利用恶意软件
手把手教你用certificate-manager修复Vcenter证书过期问题(附密码重置技巧)
本文详细解析了Vcenter证书过期引发的503服务不可用、密码错误等典型故障现象,并提供了使用certificate-manager工具进行系统性修复的完整步骤。文章重点阐述了证书体系原理、精准诊断方法,并分享了在SSO验证失败时通过vdcadmintool重置密码的关键技巧,帮助管理员快速恢复平台并建立预防性运维策略。
LocationAwarenessoniPhone
LocationAwarenessoniPhone Hack Cell id location into the iPhone and integrate with Yahoo! Zonetag (http://zonetag.research.yahoo.com//) IntroductionZonetag makes it easy to get Location. http://devel
数仓项目6.0(一)
数据同步工具种类繁多,大致可分为两类,一类是以DataX、Sqoop为代表的基于Select查询的离线、批量同步工具,另一类是以Maxwell、Canal为代表的基于数据库数据变更日志(例如MySQL的binlog,其会实时记录所有的insert、update以及delete操作)的实时流式同步工具。DataX的使用,用户只需根据数据的数据源和目的地选择相应的Reader和Writer,并将Reader和Writer的信息配置在一个json文件中,然后执行如下命令提交数据同步任务即可。
LD分析实战:基于Plink和R的连锁不平衡计算与可视化全流程
本文详细介绍了基于Plink和R的连锁不平衡(LD)分析全流程,包括基因型数据预处理、LD计算参数设置及结果可视化技巧。通过实战案例解析PLINK文件格式转换、r²值计算关键参数,并展示如何使用ggplot2绘制高质量LD热图,帮助研究人员高效完成基因组关联分析。
iOS私有API获取电话号码
.获取电话号码 需要CoreTelephony.framework extern NSString* CTSettingCopyMyPhoneNumber(); +(NSString *) phoneNumber { NSString *phone = CTSettingCopyMyPhoneNumber();
用Multisim仿真石英晶体振荡电路:从等效模型到频响曲线实战
本文通过Multisim软件,从构建石英晶体等效电路模型入手,详细演示了如何仿真分析其电抗频率特性曲线,并实战搭建与调试皮尔斯振荡电路。文章深入探讨了振荡必须工作在串联与并联谐振点之间感性区的原因,为电子设计者提供了从理论到仿真的完整可视化学习路径。
【转】获取CID 和 LAC的方法
原文地址:http://stackoverflow.com/questions/13399659/get-cellid-mcc-mnc-lac-and-network-in-ios-5-1 在iOS5 ~ iOS8.3可是使用此方法,此处使用CoreTelephony.framework私有API。同时支持GSM和UMTS 1、使用电池监控器 1 struct CTRes...
Gartner《构建可扩展数据产品建设框架》心得
数据产品化:从概念到落地的实践指南 当前企业正从传统数据需求模式转向数据产品化新范式。本文系统阐述了数据产品的核心价值、定义分类和实施框架,指出成功关键是将数据包装为可复用、可扩展的产品。Gartner框架强调产品思维,提出4阶段12步实施路径,涵盖设计、工程、发布和监控全流程。文章特别提醒要避免7大常见误区,如简单重命名报表、忽视元数据治理等,建议采取MVP策略,90天内完成从价值验证到产品落地的闭环。实施中需平衡技术选型与业务需求,建立跨职能团队,并通过AARRR模型持续追踪产品价值。
无线传感网络的Matlab实现
Matlab是一种功能强大的数值计算和数据分析工具,也可以用于无线传感网络的建模和仿真。根据实际需求,可以进一步扩展和优化模型,例如考虑节点能量消耗、网络路由、数据融合等方面的问题。函数用于绘制节点之间的连接关系,其中第一个参数是邻接矩阵,描述了节点之间的连接关系。这里使用了一个4个节点的简单例子,可以根据实际需求修改节点数量和连接关系。可以使用Matlab中的图形绘制函数来可视化节点的位置和连接关系。在无线传感网络中,节点的能量是一个关键因素。通过计算节点的剩余能量,可以评估节点的能量消耗情况。
zookeeper安装时出现的错误Missing election port for server: 2
Caused by: java.lang.IllegalArgumentException: Missing election port for server: 2 因为配置文件中server2写的这样:server.2=192.168.125.128:3888 正确的应该是:server.2=192.168.125.128:2888:3888...
Android实战——白天黑夜模式设置
白天黑夜模式是一种动态的UI模式,根据当前时间或用户设置的偏好,在白天和黑夜之间进行切换。它通过调整应用程序的颜色、亮度和其他可视化元素来提供更加舒适和易读的用户界面。
Win32窗口相关API反汇编
1、Win32应用程序入口识别 /*程序入口*/ //APIENTRY(API入口) __stdcall int APIENTRY WinMain(HINSTANCE hInstance, //ImageBase HINSTANCE hPrevInstance, //NULL LPSTR lpCmdLine, //命令行参数,可以用Debug版打印,也可以使用Release版使用Dbgview.exe查看 int nCmdShow) //指定程序窗口如何显示 看到KERNEL32.GetVer
IEM模型,地表粗糙度模拟
利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟
IDEA的使用指南
IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.
反汇编(Disassembler) iPhone
什么是反汇编? 反汇编就是把可执行的二进制文件转为汇编代码,进而可以研究该程序。IDA Pro Adv v5.2 版本起已直接支援 iPhone ARM 代码的静态反汇编分析。IDA Pro Adv v5.5 更新版本支持 ARMv7 反汇编。 IDA Pro 是目前最棒的一个静态反汇编软件, 是破解者不可缺少的利器!巨酷的反汇编软件,破解高手们几乎都喜欢用这个软件。不会用当...
android 蓝牙通讯demo
android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。
极光推送相关步骤
Anroid 部分: 1.https://www.jpush.cn/apps/35125a964f7bf1019dee3d1b/detail/,进入极光推送平台创建应用 应用包名跟AndroidManifest.xml中的包名一致 创建成功之后会生成你的appkey和 master secret,下面AndroidManifest.xml会用到你的appkey
ssm框架搭建
这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载
Waiting for server connection to start artifact deployment...
idea用tomcat起项目报错:Waiting for server connection to start artifact deployment... 百度之后,点进去的第一条结果是让配置什么什么path,看不懂,还自责自己学识浅薄。哈哈哈,百度n次,总是能看到那个高(sha)票(bi)回答之后,发现后面的评论是(wo qu ni ma )哈哈哈。 所以自己静下心来仔细看了看本人的报错信...
Symbian 函数或类与头文件和LIB库对照表
"AgnDateTime" ,"agmdate.h ", "agnmodel.lib ","AgnEntryStorer" ,"agmentry.h ", "agnmodel.lib ","AgnModel" ,"agmcomon.h ", "agnmodel.lib ","AknBorderId" ,"aknborders.h ", "","AknCommonDialogs" ,"akncomm
反汇编(Disassembler) iPhone 好东西
本帖最后由 ipod4g 于 2014-1-2 17:15 编辑 from:http://bbs.feng.com/read-htm-tid-363306.html IDA 64 Plus for Windows 百度云网盘下载 :http://pan.baidu.com/s/1sjGXZQl IDA Pro Advanced v6.1 更新 http://bbs.feng
电话事件整理
iphone电话与短信
visual studio 2017添加数据源(mysql)报 "missing server and user in credentials" 或报 "给定关键字不在字典"
直接添加 missing server and user in credentials 强制新建连接 解决方案: 回头继续连接发现没了,也不报错了
runlooop
Run loops是线程相关的的基础框架的一部分。一个run loop就是一个事件处理的循环,用来不停的调度工作以及处理输入事件。使用run loop的目的是让你的线程在有工作的时候忙于工作,而没工作的时候处于休眠状态。 Run loop的管理并不完全自动的。你仍然需要设计你的线程代码在合适的时候启动run loop并正确响应输入事件。Cocoa和Core Fundation都提供了run
ARM 汇编入门(十):标量浮点与 VFP 指令全解析
前九篇从架构、ARM32、AArch64 寄存器/寻址、算术位操作、分支、调用约定、内存模型、NEON、SVE/SVE2 一路走到这里。这一篇回到标量浮点子系统:AArch64 用统一的 V0–V31 寄存器文件同时服务标量 FP、NEON 和 SVE;FPCR 控舍入/非规格化/异常陷阱,FPSR 记粘性异常标志;FMADD 单次舍入、FMAXNM 跳过 NaN、FRECPE/FRSQRTE 做快速倒数/平方根估计;最后落到 FP16/BF16 这些机器学习降精度扩展。
汇编调试实战:DEBUG、Turbo Debugger、GDB 与 IDA
本文系统讲解汇编调试技巧,涵盖 DEBUG.exe 基础使用(寄存器查看、单步执行、内存操作)、Turbo Debugger 图形化调试,以及 GDB(32位Linux)和逆向工具(IDA/Ghidra)的高级应用。重点解析寄存器管理、断点设置、栈平衡检查与常见错误排查,如死循环、内存越界、栈崩溃等,强调静态分析识别函数边界、动态分析验证逻辑流程。掌握这些方法可高效定位底层缺陷,提升汇编开发能力。
ARM 汇编调试入门:MOV、LDR 和 STR
掌握,最重要的是看清数据移动的方向。
1927



被折叠的 条评论
为什么被折叠?



