(no subject)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Brian,

The PJSIP code hides many of the structure definitions by defining only 
the type in the header,
while the actual structure is defined in the C file that implements the 
methods. This is akin
to having private members in a C++ class.

In your example regc->current_op is not defined in the header. You can 
modify the code by moving
the structure definition into the header (making the declaration 
public), or define an accessor method
to get the value of current_op.

Regards,

Bill

On 1/21/2015 9:42 AM, Brunner, Brian T. wrote:
> On /Wed May 15 22:41:44 EDT 2013
> onmyway133 at gmail dot com said
> "/
> @saltyfoam You can check for current_op in pjsip_regc
> They can be in IDLE, REGISTERING, UNREGISTERING
> "
>
> My attempts to access and test current_op fail.
> I have read online documentation and source code for a few days.
> Here is where I am stopped:
> #include <pjsip-ua/sip_regc.h>
> void cb_on_reg_state2 (pjsua_acc_id acc_id, pjsua_reg_info *info)
> {
>         PJ_LOG(3,(__FILE__, "%s: Account %d Reason %.*s Status %d 
> CurrentOp %d",
>             __FUNCTION__, acc_id, info->cbparam->reason.slen, 
> info->cbparam->reason.ptr,
>             info->cbparam->status, info->cbparam->regc->current_op ));
> }
> error: invalid use of incomplete type 'pjsip_regc {aka struct pjsip_regc}'
>          __FUNCTION__, acc_id, info->cbparam->reason.slen, 
> info->cbparam->reason.ptr, info->cbparam->status, 
> info->cbparam->regc->current_op ));
>
> The compiler declares struct pjsip_regc to be an incomplete type.
>
> /usr/include/pjsip-ua/sip_regc.h only gives a typedef struct 
> pjsip_regc pjsip_regc; the structure definition is only in 
> pjsip/src/pjsip-ua/sip_reg.c
>
> So, how do I inform the compiler where to get current_op?
>
> The brute-force method looks to be moving the pjsip_regc structure 
> declaration into the header file ahead of the typedef, and removing it 
> from the source file.
>
> Clues begged piteously.
>
>
> ------------------------------------------------------------------------
>
> ---------------------------------------------------------------------------------------------------------------------------- 
>
>
> Confidentiality Requirement: This communication, including any 
> attachment(s), may contain confidential information and is for the 
> sole use of the intended recipient(s). If you are not the intended 
> recipient, you are hereby notified that you have received this 
> communication in error and any unauthorized review, use, disclosure, 
> dissemination, distribution or copying of it or its contents is 
> strictly prohibited.  If you have received this communication in 
> error, please notify the sender immediately by telephone or e-mail and 
> destroy all copies of this communication and any attachments.
>
>
>
> _______________________________________________
> Visit our blog: http://blog.pjsip.org
>
> pjsip mailing list
> pjsip at lists.pjsip.org
> http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/attachments/20150121/833a034f/attachment.html>


[Index of Archives]     [Asterisk Users]     [Asterisk App Development]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [Linux API]
  Powered by Linux