ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » IBM MQ API Support » Meaningless UserId value in PMQAXC structure

Post new topic  Reply to topic
 Meaningless UserId value in PMQAXC structure « View previous topic :: View next topic » 
Author Message
pazy
PostPosted: Sun Jun 19, 2005 12:37 am    Post subject: Meaningless UserId value in PMQAXC structure Reply with quote

Novice

Joined: 13 Feb 2005
Posts: 12

Hi,

I wrote an API Exit which, among others, gets the user identifier associated with the program that issued an API call.
I have noticed that sometimes (I think it usually happens when the application issued the API call is 'Websphere MQ Client for Java') the UserId as saved in the MQAXC structure (which I get in MQ_PUT_EXIT and MQ_GET_EXIT functions) does not reflect the correct UserId but is a garbage value. Why is that ?
The following is a dump of the MQAXC structure (the UserId is bold):

MQAXC
0:4158_4320 0000_0001 0000_0002 FF3E_1398 FF20_5439 |AXC ___.___.`>..` T9
20:FF3E_1398 FF3E_0D8C 0000_0032 0000_0000 0000_0000 |`>..`>..___2________
40:0000_0000 0000_0000 0000_004C FFBE_F097 0000_0000 |___________L`...____
60:0000_0000 3139_322E 3136_382E 3130_302E 3538_2020 |____192.168.100.58
80:2020_2020 2020_2020 2020_2020 2020_2020 2020_2020 |
100:2020_2020 2020_2020 2020_2020 2020_2020 2020_2020 |
120:2020_2020 2020_2020 2020_2020 2020_2020 2020_2020 |
140:2020_2020 2020_2020 2020_2020 2020_2020 2020_2020 |
160:2020_2020 2020_2020 2020_2020 2020_2020 2020_2020 |
180:2020_2020 2020_2020 2020_2020 2020_2020 2020_2020 |
200:2020_2020 2020_2020 2020_2020 2020_2020 2020_2020 |
220:2020_2020 2020_2020 2020_2020 2020_2020 2020_2020 |
240:2020_2020 2020_2020 2020_2020 2020_2020 2020_2020 |
260:2020_2020 2020_2020 2020_2020 2020_2020 2020_2020 |
280:2020_2020 2020_2020 2020_2020 2020_2020 2020_2020 |
300:2020_2020 2020_2020 2020_2020 2020_2020 2020_2020 |
320:2020_2020 2020_2020 0000_0000 0000_0000 0003_84FC | _________...
340:FFBE_E8BC 5765_6273 7068_6572 6520_4D51 2043_6C69 |`...Websphere MQ Cli
360:656E_7420 666F_7220 4A61_7661 0000_001C 0000_6FF0 |ent for Java___.__o.
380:0000_0001 |___.

Please your advise,
Thanks in advance !!!!
Back to top
View user's profile Send private message
oz1ccg
PostPosted: Sun Jun 19, 2005 1:15 am    Post subject: Reply with quote

Yatiri

Joined: 10 Feb 2002
Posts: 628
Location: Denmark

pazy, that is quite normal, that the MQClient applications "forget" to tell who they are. Or it can be caused by an badly designed client security exit....

Normally the WMQ Client supply the userid, based on who is signed on/running the application, but in java it's another ballgame, here it's up to the application to identify itself....

What I'm doing to such applications: Stop them using security exits, only allowing them to connect using an authorized userid....

Just my $0.02
_________________
Regards, Jørgen
Home of BlockIP2, the last free MQ Security exit ver. 3.00
Cert. on WMQ, WBIMB, SWIFT.
Back to top
View user's profile Send private message Send e-mail Visit poster's website MSN Messenger
pazy
PostPosted: Sun Jun 19, 2005 3:53 am    Post subject: Reply with quote

Novice

Joined: 13 Feb 2005
Posts: 12

Thanks Jorgen for your quick reply.

I tried to reproduce this problem in the 'lab', with no success ->

The MQ JAVA client did not supply the userid and -
a. if the MCAUSER is defined for the channel, it was the selected UserId.
b. if the MCAUSER is not defined, empty (and not garbage) UserId is displayed in the MQAXC structure.

How can the UserId become garbage ?

In addition, do you know how ( / if ...) can I distinguish that the UserId in the MQAXC structure is garbage (and not non-english characters for example !! ) ?

Thanks a lot,
Paz
Back to top
View user's profile Send private message
oz1ccg
PostPosted: Sun Jun 19, 2005 12:56 pm    Post subject: Reply with quote

Yatiri

Joined: 10 Feb 2002
Posts: 628
Location: Denmark

I'm not shure it's garbage... (it might be some pointers, or un-initialized).

But according to doc:
This is the user identifier associated with the program that issued the API call. For a client connection (MQXE_MCA_SVRCONN), UserId contains the user identifier of the adopted user, and not the user identifier of the MCA.

I've not investigated this exit yet, no need.

Just my $0.02
_________________
Regards, Jørgen
Home of BlockIP2, the last free MQ Security exit ver. 3.00
Cert. on WMQ, WBIMB, SWIFT.
Back to top
View user's profile Send private message Send e-mail Visit poster's website MSN Messenger
pazy
PostPosted: Sun Jun 19, 2005 10:40 pm    Post subject: Reply with quote

Novice

Joined: 13 Feb 2005
Posts: 12

I don't think the above UserId is a pointer but it might be un-initialized value.
However, the problem still stands- how can the UserId become un-initialized ?? according to my tests it looks like that if the UserId has no value, it has null value (i.e 0000_0000 0000_0000 0000_0000) !!!

(I know that the UserId is of the adopter user- and this is the required parameter).

Does anyone have any idea??

Please advise !!!
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » IBM MQ API Support » Meaningless UserId value in PMQAXC structure
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.