如何释放RPC服务器中分配的内存?

时间:2016-08-23 15:42:17

标签: rpc sunrpc

我有一个RPC服务器,它将大量可变长度数据传输到客户端。 .x文件看起来像这样

struct file
{
    opaque data<>
};

在服务器例程中,我有

struct file *transfer_1_svc(...)
{
    struct file;

    file.data.data_val = malloc(...);

    return &file;
}

我的问题是谁释放了服务器例程中分配的数据?

1 个答案:

答案 0 :(得分:0)

这取决于您的服务器代码。如果使用rpcgen生成服务器存根,则可以使用 xdr_free 函数来释放结果。有关详细信息,请查看SunRPC开发人员指南:https://docs.oracle.com/cd/E19683-01/816-1435/rpcgenpguide-21470/index.html