MQ Technical Conference v2.0.1.8

Capitalware would like to announce MQ Technical Conference v2.0.1.8 (MQTC). MQTC is an event that will educate attendees on current practices, methodologies, administration, problem determination, security best practices and technology trends for IBM MQ. MQTC will offer 71 technical sessions and 15 vendor sessions that are designed to enhance the skills of IT professionals who are using IBM MQ on AIX, HP-UX, IBM i (OS/400), Linux, Solaris, Windows and z/OS. Since we have 5 session rooms at MQTC, there will be 5 concurrent MQ sessions at any given time.

MQTC is the largest conference in the world solely dedicated to IBM MQ (aka WebSphere MQ & MQSeries).

Date: September 24 to September 26, 2018
Location: Kalahari Resorts in Sandusky, Ohio
Duration: 3 Days

Early-bird Price: $449.00 until June 24th, 2018
Regular Price: $499.00 from June 25th to September 9th, 2018
Group Price (5+ people): $449.00 until August 24th, 2018
Late/Onsite Price: $549.00 after September 9th, 2018

For more information, please go to: http://www.mqtechconference.com

Regards,
Roger Lacroix
Capitalware Inc.

Capitalware, Education, IBM MQ, MQ Technical Conference Comments Off on MQ Technical Conference v2.0.1.8

Burger King Explains Net Neutrality With Whoppers

In Canada, we have a Net Neutrality law, so the FCC Net Neutrality non-sense in the USA does not affect me. I’m not into politics but anyone can clearly see that Ajit Pai (FCC Chairman) motive for getting rid of Net Neutrality in the USA is all about the money. When he’s done at the FCC, he will want to be CEO of Verizon, AT&T, etc. and say to his boys “look at what I did, we can now charge BOTH the customers and the content providers for the same bandwidth or have fast, medium or slow lanes of the internet”.

This is truly a funny Burger King commercial and hopefully teaches everyone why Net Neutrality is important:

https://youtu.be/ltzy5vRmN8Q

Regards,
Roger Lacroix
Capitalware Inc.

Education, Video Comments Off on Burger King Explains Net Neutrality With Whoppers

Capitalware z/OS and IBM i Product Advisory

A potential bug was discovered in Capitalware’s logging framework, see here for more details, for commercial and “Licensed as Free” products for z/OS and IBM i.

    Commercial Products affected:

  • MQ Authenticate User Security Exit for IBM i
  • MQ Channel Encryption for IBM i
  • MQ Standard Security Exit for IBM i
  • MQ Authenticate User Security Exit for z/OS
  • MQ Channel Encryption for z/OS
  • MQ Standard Security Exit for z/OS

To receive updates to the commercial products, please send an email to support@capitalware.com

    Licensed as Free Products affected:

  • MQ Channel Auto Creation Manager for IBM i
  • MQ Set UserID for IBM i
  • Client-side Security Exit for Depository Trust Clearing Corporation for IBM i
  • MQ Channel Auto Creation Manager for z/OS
  • MQ Set UserID for z/OS
  • Client-side Security Exit for Depository Trust Clearing Corporation for z/OS

The updates for the “Licensed as Free” z/OS products have been posted to Capitalware’s web site, so you can download them immediately.

Note: I am currently having issues with IBM Power Development Platform (PDP) for IBM i OS. All of the compile and link resources have been removed from my running image (maybe missing mount point!?!). As soon as this issue gets fixed, I’ll upload the updates for products for IBM i.

Regards,
Roger Lacroix
Capitalware Inc.

Capitalware, IBM i (OS/400), IBM MQ, Licensed As Free, MQ Authenticate User Security Exit, MQ Channel Encryption, MQ Standard Security Exit, z/OS Comments Off on Capitalware z/OS and IBM i Product Advisory

SQLite v3.22.0 Released

D. Richard Hipp has just released SQLite v3.22.0.
http://www.sqlite.org/news.html

SQLite is a software library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine. SQLite is the most widely deployed SQL database engine in the world. The source code for SQLite is in the public domain.

Regards,
Roger Lacroix
Capitalware Inc.

C, Database, IBM i (OS/400), Linux, macOS (Mac OS X), Open Source, Programming, Unix, Windows, z/OS Comments Off on SQLite v3.22.0 Released

T.Rob’s post of “When deprecated != deprecated”

T.Rob Wyatt of IoPT Consulting has a new blog posting called “When deprecated != deprecated“. If you use SSL/TLS with IBM MQ then you should read it:
https://t-rob.net/2018/01/19/when-deprecated-deprecated/

Here is the current IBM MQ Depreciated Cipher page.

Regards,
Roger Lacroix
Capitalware Inc.

IBM i (OS/400), IBM MQ, Linux, Security, Unix, Windows, z/OS Comments Off on T.Rob’s post of “When deprecated != deprecated”

IBM MQ for HPE NonStop V8.0.1 is now available

IBM MQ for HPE NonStop 8.0.1 is the first Continuous Delivery (CD) update for MQ NonStop. (WebSphere MQ NonStop 5.3.1 is the current Long Term Support option). The Continuous Delivery releases incrementally build on the MQ 8.0.0 features, providing early, supported access to the latest MQ capabilities.
https://developer.ibm.com/messaging/2018/01/19/ibm-mq-hpe-nonstop-v8-0-1-now-available/

Regards,
Roger Lacroix
Capitalware Inc.

Fix Packs for MQ, HPE NonStop, IBM MQ Comments Off on IBM MQ for HPE NonStop V8.0.1 is now available

I’m a Bad Programmer! ;)

If I was in a code walk-through of someone else’s code and found the bug that I just found in my code, I would say “that is some bad programming”. So, I’ll admit it – I’m a bad programmer! 😉

A long time ago, I created a nice logging framework (C code) for Capitalware’s products. I build it so that it would work on ALL platforms. i.e. AIX, HP-UX, IBM i (OS/400), Linux, Solaris, Windows and z/OS. I created it with various log modes: Quiet, Normal, Verbose and Debug.

For the log mode of verbose or debug, the output includes both the source filename (i.e. __FILE__) and source line number (i.e. __LINE__). If you’ve developed C code for awhile, you are probably aware of these C preprocessors.

My logging framework is made up of layers. The “application code” is 2 layers removed from the real logging code (just setting the mood).

For Linux, Unix and Windows, the __FILE__ preprocessor is just the path and file name. For IBM i and z/OS, it is the same concept except the source does not have a file extension and the member is surrounded by bracket. i.e. For z/OS, __FILE__ would be ‘ABC.TEST.C(XYZ)’ where “XYZ” is the source member.

For Linux, Unix and Windows, everything is fine. The code simply finds the last path delimiter (i.e. ‘\’ or ‘/’) and then sets the pointer to be +1 of the address (it points at the first of byte of the filename).

For IBM i and z/OS, the code finds the first bracket and sets the pointer to be +1 of the address. Next, it then finds the last bracket and as a quick and dirty thing that C programmers do, I just changed the right bracket “)” to a NULL. i.e. *p = ‘\0’;

Everything has worked fine for years (many, many years). Someone just deployed a beta of MQCCI for z/OS to their z/OS 2.2.0 LPAR and whenever they turned on debugging, the code would crash with:

+CSQX111E +MQQM CSQXDISP User channel exit error, TCB=007B1318  227 reason=0C4000-00000004
+CSQX599E +MQQM CSQXRESP Channel ORT.TO.HOST.MQCCI ended abnormally
CSQY291E CSQXDMPS SDUMPX FAILED, RC=00000B08,MQQM,ABN= 0C4-00000004,LOC=MQCCI   .????????+00852
+CSQX111E +MQQM CSQXDISP User channel exit error, TCB=007B1088  304 reason=0C4000-00000004
+CSQX599E +MQQM CSQXRESP Channel ORT.TO.HOST.MQCCI ended abnormally

When I ran MQCCI for z/OS on my LPAR and turned on debugging, everything worked as expected. 🙁

The “????????+00852” gave me a clue. I reviewed the compile map and that hex address (852) was located somewhere in my logging framework. I spent hours and hours trying to find something, anything that would explain the 0C4 (accessing wrong/invalid storage). Then it occurred to me, the pointer that was passed into the logging framework did not point to a copy of the value of “__FILE__” but the actual value of “__FILE__”. Hence, I was modifying a constant which clearly now on the newer z/OS LPAR is read-only storage. That is why my program crashed with an 0C4. 🙁

Hence, I’m a bad programmer!!! You got to call it like it is. 😉

Sooooooooooooooooooo. I need to do builds of all Capitalware products (commercial and ‘Licensed as Free’) for IBM i and z/OS platforms ASAP.

Regards,
Roger Lacroix
Capitalware Inc.

C, Capitalware, IBM i (OS/400), IBM MQ, Programming, z/OS Comments Off on I’m a Bad Programmer! ;)

ISF002I MASTER SDSF SYSLOG INDEX FULL

I have a z/OS LPAR via IBM’s RDP (Remote Development Program). Yesterday, I started receiving the following error message every time I went to SDSF’s log panel:

ISF002I MASTER SDSF SYSLOG INDEX FULL

I’m a developer and not a SysAdmin. At first I ignored it then got annoyed and did some internet searches. I found some commands but nothing worked for me. I found this command that the person said would delete all entries older than 90 days but it did not work for me.
I.e.

$P O JOBQ,READY,Q=x,A>90

I opened a ticket with IBM’s RDP support and here was there response:

Go to the SDSF O panel and delete all SYSLOGs entries that you no longer want by placing a P to the left of the output.

After some help from a fellow MQ ListServer person, I now understand why the above “P” command did not work for me. You need to know the class for the Q (Queue) parameter.

First go to SDSF O panel and set your prefix to “*”. i.e. PRE *

Next look at the “C” (class) column, (see highlight in picture):

My SYSLOG entries are class ‘C’. Therefore, the correct command (for me) is:

$P O JOBQ,READY,Q=C,A>90

This command will delete all SYSLOG entries older than 90 days.

Hope this helps other developers who are not SysAdmins with their z/OS LPAR SYSLOG issues. 🙂

Regards,
Roger Lacroix
Capitalware Inc.

Operating Systems, z/OS Comments Off on ISF002I MASTER SDSF SYSLOG INDEX FULL

IBM Champion Again.

Proud to be named as an IBM Champion for my contributions to IBM MQ community for the 2nd year in a row!
https://www.ibm.com/developerworks/champion/

Regards,
Roger Lacroix
Capitalware Inc.

IBM MQ Comments Off on IBM Champion Again.

Beta testers needed for MQ Channel Connection Inspector

All,

Capitalware is ready for beta testers for a new solution called: MQ Channel Connection Inspector.

Have you ever had client applications or remote queue managers attempt to connect to your queue manager but failed and the user claimed they used the “correct values”.

I’ve created a new solution to quickly diagnose this problem and need some beta testers to give me some feedback. MQ Channel Connection Inspector (MQCCI) is an MQ Channel Security Exit. For those who don’t know, a channel security exit is ONLY invoked/called by the MCA for MQCONN/X and MQDISC API calls (so it is very light-weight). The MCA passes the MQCD and MQCXP structures to the channel security exit. Those structures contain SSL/TLS fields, MCAUserId, batch size, retry information, etc. The MQCD structure has 82 fields and the MQCXP structure 26 fields (see MQ’s cmqxc.h file for more details).

I have designed MQCCI to output any or all of the fields from the MQCD and MQCXP structures (user selectable). The information is written to a CSV (Comma-Separated-Values) file. Right now, the output is in the format of “field=value,field=value,field=value,etc.”. The “value” data has been converted to human-readable format. The first question for beta testers is this an acceptable format or would you prefer a true CSV/spreadsheet format. i.e. where the field/column names are in row 1 and only the values are in rows 2 through to the last row.

Current format:

2018/01/10 17:25:07.712373, CONN, QMgrName=MQWT1, ChlName=TEST.EXIT, CD_MaxMsgLength=4194304, CD_PutAuthority=MQPA_DEFAULT, CD_MCAUserIdentifier=barney, CD_ConnectionName=10.10.10.10, CD_RemoteUserIdentifier=barney, CXP_RemoteProduct=MQCC, CXP_RemoteVersion=0800,

Or a true CSV/spreadsheet format would be (row # 1 would only be in the CSV file once):

"Date/Time", "API Call", Queue Manager Name", "Channel Name", "CD_MaxMsgLength", "CD_PutAuthority", "CD_MCAUserIdentifier", "CD_ConnectionName", "CD_RemoteUserIdentifier", "CXP_RemoteProduct", "CXP_RemoteVersion",
"2018/01/10 17:25:07.712373", "CONN", "MQWT1", "TEST.EXIT", 4194304, "MQPA_DEFAULT", "barney", "10.10.10.10", "barney", "MQCC", "0800",
"2018/01/10 17:25:09.446511", "CONN", "MQWT1", "TEST.EXIT", 4194304, "MQPA_DEFAULT", "wilma", "10.10.10.20", "wilma", "MQCC", "0800",

I plan on building MQ Channel Connection Inspector for AIX, HP-UX (RISC & IA64), Solaris (SPARC & x86_64), Linux (x86, x86_64, POWER & zSeries), Windows and IBM i (OS/400) and z/OS. MQ Channel Connection Inspector will support WMQ v6.0, v7.0, v7.1, v7.5, v8.0 & v9.0.

Beta testing MQ Channel Connection Inspector is absolutely free including support (no strings attached).

If you interesting in trying it out, please send an email to support@capitalware.com to request a trial of MQ Channel Connection Inspector,

Regards,
Roger Lacroix
Capitalware Inc.

Capitalware, IBM i (OS/400), IBM MQ, Linux, MQ Channel Connection Inspector, Security, Unix, Windows, z/OS Comments Off on Beta testers needed for MQ Channel Connection Inspector