如何在mac os x的内核扩展项目中使用zlib?

如何在mac os x的内核扩展项目中使用zlib?,c,macos,zlib,inflate,kernel-extension,C,Macos,Zlib,Inflate,Kernel Extension,我想在mac os上开发一个网络内核扩展。我在函数sf_data_in()中获得了一些gzip格式的数据。我包含了名为的头文件,当我用“kextload”加载kext后,我的mac在运行下面的代码时崩溃了 谁能告诉我如何在内核编程中使用它。最好给一些样品。 非常感谢。我在文件中发现了zlib内核库的一些用法,也许它将是您代码的一个良好起点。您将错误数量的参数传递给inflateInit2(),它需要指向流的指针和以位为单位的窗口大小。如果不希望设置后者,请改用inflateInit() 您可能还

我想在mac os上开发一个网络内核扩展。我在函数sf_data_in()中获得了一些gzip格式的数据。我包含了名为
的头文件,当我用“kextload”加载kext后,我的mac在运行下面的代码时崩溃了

谁能告诉我如何在内核编程中使用它。最好给一些样品。
非常感谢。

我在文件中发现了zlib内核库的一些用法,也许它将是您代码的一个良好起点。

您将错误数量的参数传递给
inflateInit2()
,它需要指向流的指针和以位为单位的窗口大小。如果不希望设置后者,请改用
inflateInit()


您可能还想使用zlib查看一些内核代码,

谢谢您的帮助。但是gunzip是针对Linux的,您能告诉我如何在MacOSX或其他解决方案中使用zlib作为内核扩展吗。再次感谢@凯尔:哦,我没有注意到OSX内核中有这个词,我只是注意到内核这个词…:(
z_stream strm;
bzero(&strm, sizeof(z_stream));

if (Z_OK != inflateInit2(&strm))
{
    printf("inflateInit error.\n");

    inflateEnd(&strm);

    return 0;
}