#ifndef _RDS_INFO_H#define _RDS_INFO_Hstructrds_info_lengths{unsignedintnr;unsignedinteach;};structrds_info_iterator;/* * These functions must fill in the fields of @lens to reflect the size * of the available info source. If the snapshot fits in @len then it * should be copied using @iter. The caller will deduce if it was copied * or not by comparing the lengths. */typedefvoid(*rds_info_func)(structsocket*sock,unsignedintlen,structrds_info_iterator*iter,structrds_info_lengths*lens);voidrds_info_register_func(intoptname,rds_info_funcfunc);voidrds_info_deregister_func(intoptname,rds_info_funcfunc);intrds_info_getsockopt(structsocket*sock,intoptname,char__user*optval,int__user*optlen);voidrds_info_copy(structrds_info_iterator*iter,void*data,unsignedlongbytes);voidrds_info_iter_unmap(structrds_info_iterator*iter);#endif