Proxy not received!

Hi,

I’m triggering a proxy in one process. To start off with I can also receive
it in another process, however later on in my application I’m no longer able
to receive it!

I’ve followed it through the code and I’m certain it is triggered and that
the proxy id does not change at any point.

Fellows…I’m getting desperate!
I know this is very bad explained, however, have anyone seen this before?
Does anyone have a suggestion to what I could look for in order to sort out
the problem? Is there a way to verify the proxy has been triggered?

anything you can think of…please help me!!!

Thanks,
Lars

I’m running QNX4.25

Lars Skade wrote:

I’m triggering a proxy in one process. To start off with I can also receive
it in another process, however later on in my application I’m no longer able
to receive it!

I’ve followed it through the code and I’m certain it is triggered and that
the proxy id does not change at any point.

Fellows…I’m getting desperate!
I know this is very bad explained, however, have anyone seen this before?
Does anyone have a suggestion to what I could look for in order to sort out
the problem? Is there a way to verify the proxy has been triggered?

anything you can think of…please help me!!!

If you’re failing to consume the proxy, it should still be visible and
counted using the command ‘sin proxy’.

Where are your triggering this proxy? In an ISR or in a user process?
How are you doing the Receive() (ie with a zero pid or a specific pid?)


Cheers,
Adam

QNX Software Systems
[ amallory@qnx.com ]

With a PC, I always felt limited by the software available.
On Unix, I am limited only by my knowledge.
–Peter J. Schoenster <pschon@baste.magibox.net>

“Adam Mallory” <amallory@qnx.com> wrote in message
news:cmtpq2$5m8$1@inn.qnx.com

Lars Skade wrote:
I’m triggering a proxy in one process. To start off with I can also
receive it in another process, however later on in my application I’m no
longer able to receive it!

I’ve followed it through the code and I’m certain it is triggered and
that the proxy id does not change at any point.

Fellows…I’m getting desperate!
I know this is very bad explained, however, have anyone seen this before?
Does anyone have a suggestion to what I could look for in order to sort
out the problem? Is there a way to verify the proxy has been triggered?

anything you can think of…please help me!!!

If you’re failing to consume the proxy, it should still be visible and
counted using the command ‘sin proxy’.

Where are your triggering this proxy? In an ISR or in a user process? How
are you doing the Receive() (ie with a zero pid or a specific pid?)

And does Trigger returns an error code.


Cheers,
Adam

QNX Software Systems
[ > amallory@qnx.com > ]

With a PC, I always felt limited by the software available.
On Unix, I am limited only by my knowledge.
–Peter J. Schoenster <> pschon@baste.magibox.net

Thanks for the suggestion,
Trigger gives no error.

Whether the proxy gets consumed I’m not quite sure - what do I look for when
entering sin proxy? I can’t do it until after I exit my application so I
suppose it then disappears.

The proxy is triggered in a user process.
I’ve set it up like this in process 1:

MESSAGE_HEADER proxy_data;
proxy_data.from = (pid_t)(-1);
proxy_data.to = (pid_t)(-1);
proxy_data.action_code = PROXY_MESSAGE;
core_proxy = qnx_proxy_attach( 0, (char*)(&proxy_data),
sizeof(MESSAGE_HEADER),-1);

core_proxy later gets sent to process 2 in a message to inform this about
the proxy pid.

Later in process 2 (not in an ISR) I trigger the proxy:
return_val = Trigger( core_proxy );

In process 1 I’ve added the function msg_handler to the main loop:
PtAppAddInput( NULL, 0, msg_handler, NULL );
With the “0” parameter this calls the msg_handler function every time a
message is received.

I’ve checked that core_proxy is identic in both processes, for instance
2860, while return_val gives me 2843. I’m not sure why these numbers aren’t
identic, however I doubt it is significant as the proxy does work once.
So…the problem is the proxy works once and then stops working! what do I
do???

Thanks for any help…delivery date is quickly comiing closer!
Lars

“Mario Charest” <nowheretobefound@8thdimension.com> escribió en el mensaje
news:cmttkt$87j$1@inn.qnx.com

“Adam Mallory” <> amallory@qnx.com> > wrote in message
news:cmtpq2$5m8$> 1@inn.qnx.com> …
Lars Skade wrote:
I’m triggering a proxy in one process. To start off with I can also
receive it in another process, however later on in my application I’m no
longer able to receive it!

I’ve followed it through the code and I’m certain it is triggered and
that the proxy id does not change at any point.

Fellows…I’m getting desperate!
I know this is very bad explained, however, have anyone seen this
before? Does anyone have a suggestion to what I could look for in order
to sort out the problem? Is there a way to verify the proxy has been
triggered?

anything you can think of…please help me!!!

If you’re failing to consume the proxy, it should still be visible and
counted using the command ‘sin proxy’.

Where are your triggering this proxy? In an ISR or in a user process?
How are you doing the Receive() (ie with a zero pid or a specific pid?)

And does Trigger returns an error code.

\

Cheers,
Adam

QNX Software Systems
[ > amallory@qnx.com > ]

With a PC, I always felt limited by the software available.
On Unix, I am limited only by my knowledge.
–Peter J. Schoenster <> pschon@baste.magibox.net

problem sorted…guess what it was

Process 1 had sent a message to process 2 and as so was blocked until
process 2 responded.
I needed to send an empty reply back to process 1 to unblock this!

Thanks for your help

Lars