{"id":802,"date":"2020-11-17T15:42:21","date_gmt":"2020-11-17T15:42:21","guid":{"rendered":"https:\/\/marketaylor.synology.me\/?p=802"},"modified":"2020-11-17T19:47:05","modified_gmt":"2020-11-17T19:47:05","slug":"mq-exit-source-code-repository","status":"publish","type":"post","link":"https:\/\/marketaylor.synology.me\/?p=802","title":{"rendered":"MQ Exit source code repository"},"content":{"rendered":"\n<p>We&#8217;ve recently made available a new  repository at<a rel=\"noreferrer noopener\" aria-label=\"github repository (opens in a new tab)\" href=\"https:\/\/github.com\/ibm-messaging\/mq-exits\" target=\"_blank\"> https:\/\/github.com\/ibm-messaging\/mq-exits<\/a> that is intended to hold the source code for various MQ Exits of different kinds.<\/p>\n\n\n<p><!--more--><\/p>\n\n\n<p>The &#8220;exit&#8221; word here covers a variety of different interfaces for MQ including:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Channel exits<\/li><li>API Exits<\/li><li>Installable Services<\/li><\/ul>\n\n\n\n<p>While there are a number of repositories with application-level code, these more advanced topics needed somewhere to collect them too. To seed the repo, there are two packages. One old, one new.<\/p>\n\n\n\n<h5 class=\"wp-block-heading\">The initial contents<\/h5>\n\n\n\n<p>The old one is an Installable Service <code>oamlog<\/code>that logs all interactions with the Object Authority Manager. Originally released in 2001 as SupportPac MS07, then moved into MS0P, it might have found a final resting place here.<\/p>\n\n\n\n<p>The new <code>connwarn<\/code> exit is perhaps more interesting. <a rel=\"noreferrer noopener\" aria-label=\"Rob  (opens in a new tab)\" href=\"https:\/\/github.com\/parrobe\" target=\"_blank\">Ro<\/a><a href=\"https:\/\/github.com\/parrobe\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"Rob  (opens in a new tab)\">b<\/a><a rel=\"noreferrer noopener\" aria-label=\"Rob  (opens in a new tab)\" href=\"https:\/\/github.com\/parrobe\" target=\"_blank\"> <\/a>has written an channel security exit that can be used to check the behaviour of client applications as part of a migration process towards enabling CONNAUTH userid\/password authentication. It logs information about connection requests including the different ways in which passwords might be passed from the application. <\/p>\n\n\n\n<p>It doesn&#8217;t actually stop applications with bad credentials from connecting. That&#8217;s because the intention is that you work out which apps are bad before then turning on real authentication with CONNAUTH. And once you&#8217;ve migrated, then the exit can be removed.<\/p>\n\n\n\n<h6 class=\"wp-block-heading\">The log output from connwarn exit<\/h6>\n\n\n\n<pre class=\"wp-block-preformatted\">-\n  timestamp: \"2020-11-17T15:22:47+0000\"\n  remote_conname: \"127.0.0.1\"\n  remote_appuser: \"metaylor\"\n  MQCD_set: false\n  MQCD_user: \"\"\n  MQCSP_set: false\n  MQCSP_user: \"\"\n  MQCD_MQCSP_identical: false\n  MQCSP_valid: false<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Future thoughts<\/h3>\n\n\n\n<p>Now that the repository exists, I&#8217;ve got some thoughts on potential additions. There&#8217;s a couple of API Exits that might be suitable. We might take copies of some of the sample exits that are in the product, or which have been floating around the internet for years.<\/p>\n\n\n\n<p>But the key point is there is now an easily-searchable home for this kind of code. And I&#8217;d be interested in hearing about any suggestions you might have too. <\/p>\n<p class=\"last-modified\" style=\"border:1px solid;padding: 10px;\">This post was last updated on November 17th, 2020 at 07:47 pm<\/p>","protected":false},"excerpt":{"rendered":"<p>We&#8217;ve recently made available a new repository at https:\/\/github.com\/ibm-messaging\/mq-exits that is intended to hold the source code for various MQ Exits of different kinds. This post was last updated on November 17th, 2020 at 07:47 pm<\/p>\n","protected":false},"author":1,"featured_media":714,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[5],"tags":[19,20],"class_list":["post-802","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-mq","tag-mq","tag-mqseries"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>MQ Exit source code repository - Mark Taylor&#039;s Blog<\/title>\n<meta name=\"description\" content=\"There is a new repository available of source code for MQ Exits. This post describes what is there and what might come.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/marketaylor.synology.me\/?p=802\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"MQ Exit source code repository - Mark Taylor&#039;s Blog\" \/>\n<meta property=\"og:description\" content=\"There is a new repository available of source code for MQ Exits. This post describes what is there and what might come.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/marketaylor.synology.me\/?p=802\" \/>\n<meta property=\"og:site_name\" content=\"Mark Taylor&#039;s Blog\" \/>\n<meta property=\"article:published_time\" content=\"2020-11-17T15:42:21+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2020-11-17T19:47:05+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/marketaylor.synology.me\/wp-content\/uploads\/2020\/05\/exit.png\" \/>\n\t<meta property=\"og:image:width\" content=\"512\" \/>\n\t<meta property=\"og:image:height\" content=\"171\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Mark\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@marketaylor\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Mark\" \/>\n\t<meta name=\"twitter:label2\" content=\"Estimated reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/marketaylor.synology.me\\\/?p=802#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/marketaylor.synology.me\\\/?p=802\"},\"author\":{\"name\":\"Mark\",\"@id\":\"https:\\\/\\\/marketaylor.synology.me\\\/#\\\/schema\\\/person\\\/2d6f4113ff54187023e20c20186bbb3c\"},\"headline\":\"MQ Exit source code repository\",\"datePublished\":\"2020-11-17T15:42:21+00:00\",\"dateModified\":\"2020-11-17T19:47:05+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/marketaylor.synology.me\\\/?p=802\"},\"wordCount\":312,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/marketaylor.synology.me\\\/?p=802#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/marketaylor.synology.me\\\/wp-content\\\/uploads\\\/2020\\\/05\\\/exit.png\",\"keywords\":[\"mq\",\"mqseries\"],\"articleSection\":[\"IBM MQ\"],\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/marketaylor.synology.me\\\/?p=802#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/marketaylor.synology.me\\\/?p=802\",\"url\":\"https:\\\/\\\/marketaylor.synology.me\\\/?p=802\",\"name\":\"MQ Exit source code repository - Mark Taylor&#039;s Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/marketaylor.synology.me\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/marketaylor.synology.me\\\/?p=802#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/marketaylor.synology.me\\\/?p=802#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/marketaylor.synology.me\\\/wp-content\\\/uploads\\\/2020\\\/05\\\/exit.png\",\"datePublished\":\"2020-11-17T15:42:21+00:00\",\"dateModified\":\"2020-11-17T19:47:05+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/marketaylor.synology.me\\\/#\\\/schema\\\/person\\\/2d6f4113ff54187023e20c20186bbb3c\"},\"description\":\"There is a new repository available of source code for MQ Exits. This post describes what is there and what might come.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/marketaylor.synology.me\\\/?p=802#breadcrumb\"},\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/marketaylor.synology.me\\\/?p=802\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\\\/\\\/marketaylor.synology.me\\\/?p=802#primaryimage\",\"url\":\"https:\\\/\\\/marketaylor.synology.me\\\/wp-content\\\/uploads\\\/2020\\\/05\\\/exit.png\",\"contentUrl\":\"https:\\\/\\\/marketaylor.synology.me\\\/wp-content\\\/uploads\\\/2020\\\/05\\\/exit.png\",\"width\":512,\"height\":171,\"caption\":\"Exit\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/marketaylor.synology.me\\\/?p=802#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/marketaylor.synology.me\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"MQ Exit source code repository\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/marketaylor.synology.me\\\/#website\",\"url\":\"https:\\\/\\\/marketaylor.synology.me\\\/\",\"name\":\"Mark Taylor&#039;s Blog\",\"description\":\"Messaging, Music and Moving Around\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/marketaylor.synology.me\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-GB\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/marketaylor.synology.me\\\/#\\\/schema\\\/person\\\/2d6f4113ff54187023e20c20186bbb3c\",\"name\":\"Mark\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/9a5ae091c43730194cba7cabb5d65c1dc3f48d05caaddec6ff2319a1ce66376f?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/9a5ae091c43730194cba7cabb5d65c1dc3f48d05caaddec6ff2319a1ce66376f?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/9a5ae091c43730194cba7cabb5d65c1dc3f48d05caaddec6ff2319a1ce66376f?s=96&d=mm&r=g\",\"caption\":\"Mark\"},\"sameAs\":[\"https:\\\/\\\/x.com\\\/marketaylor\"],\"url\":\"https:\\\/\\\/marketaylor.synology.me\\\/?author=1\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"MQ Exit source code repository - Mark Taylor&#039;s Blog","description":"There is a new repository available of source code for MQ Exits. This post describes what is there and what might come.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/marketaylor.synology.me\/?p=802","og_locale":"en_GB","og_type":"article","og_title":"MQ Exit source code repository - Mark Taylor&#039;s Blog","og_description":"There is a new repository available of source code for MQ Exits. This post describes what is there and what might come.","og_url":"https:\/\/marketaylor.synology.me\/?p=802","og_site_name":"Mark Taylor&#039;s Blog","article_published_time":"2020-11-17T15:42:21+00:00","article_modified_time":"2020-11-17T19:47:05+00:00","og_image":[{"width":512,"height":171,"url":"https:\/\/marketaylor.synology.me\/wp-content\/uploads\/2020\/05\/exit.png","type":"image\/png"}],"author":"Mark","twitter_card":"summary_large_image","twitter_creator":"@marketaylor","twitter_misc":{"Written by":"Mark","Estimated reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/marketaylor.synology.me\/?p=802#article","isPartOf":{"@id":"https:\/\/marketaylor.synology.me\/?p=802"},"author":{"name":"Mark","@id":"https:\/\/marketaylor.synology.me\/#\/schema\/person\/2d6f4113ff54187023e20c20186bbb3c"},"headline":"MQ Exit source code repository","datePublished":"2020-11-17T15:42:21+00:00","dateModified":"2020-11-17T19:47:05+00:00","mainEntityOfPage":{"@id":"https:\/\/marketaylor.synology.me\/?p=802"},"wordCount":312,"commentCount":0,"image":{"@id":"https:\/\/marketaylor.synology.me\/?p=802#primaryimage"},"thumbnailUrl":"https:\/\/marketaylor.synology.me\/wp-content\/uploads\/2020\/05\/exit.png","keywords":["mq","mqseries"],"articleSection":["IBM MQ"],"inLanguage":"en-GB","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/marketaylor.synology.me\/?p=802#respond"]}]},{"@type":"WebPage","@id":"https:\/\/marketaylor.synology.me\/?p=802","url":"https:\/\/marketaylor.synology.me\/?p=802","name":"MQ Exit source code repository - Mark Taylor&#039;s Blog","isPartOf":{"@id":"https:\/\/marketaylor.synology.me\/#website"},"primaryImageOfPage":{"@id":"https:\/\/marketaylor.synology.me\/?p=802#primaryimage"},"image":{"@id":"https:\/\/marketaylor.synology.me\/?p=802#primaryimage"},"thumbnailUrl":"https:\/\/marketaylor.synology.me\/wp-content\/uploads\/2020\/05\/exit.png","datePublished":"2020-11-17T15:42:21+00:00","dateModified":"2020-11-17T19:47:05+00:00","author":{"@id":"https:\/\/marketaylor.synology.me\/#\/schema\/person\/2d6f4113ff54187023e20c20186bbb3c"},"description":"There is a new repository available of source code for MQ Exits. This post describes what is there and what might come.","breadcrumb":{"@id":"https:\/\/marketaylor.synology.me\/?p=802#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/marketaylor.synology.me\/?p=802"]}]},{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/marketaylor.synology.me\/?p=802#primaryimage","url":"https:\/\/marketaylor.synology.me\/wp-content\/uploads\/2020\/05\/exit.png","contentUrl":"https:\/\/marketaylor.synology.me\/wp-content\/uploads\/2020\/05\/exit.png","width":512,"height":171,"caption":"Exit"},{"@type":"BreadcrumbList","@id":"https:\/\/marketaylor.synology.me\/?p=802#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/marketaylor.synology.me\/"},{"@type":"ListItem","position":2,"name":"MQ Exit source code repository"}]},{"@type":"WebSite","@id":"https:\/\/marketaylor.synology.me\/#website","url":"https:\/\/marketaylor.synology.me\/","name":"Mark Taylor&#039;s Blog","description":"Messaging, Music and Moving Around","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/marketaylor.synology.me\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-GB"},{"@type":"Person","@id":"https:\/\/marketaylor.synology.me\/#\/schema\/person\/2d6f4113ff54187023e20c20186bbb3c","name":"Mark","image":{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/secure.gravatar.com\/avatar\/9a5ae091c43730194cba7cabb5d65c1dc3f48d05caaddec6ff2319a1ce66376f?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/9a5ae091c43730194cba7cabb5d65c1dc3f48d05caaddec6ff2319a1ce66376f?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/9a5ae091c43730194cba7cabb5d65c1dc3f48d05caaddec6ff2319a1ce66376f?s=96&d=mm&r=g","caption":"Mark"},"sameAs":["https:\/\/x.com\/marketaylor"],"url":"https:\/\/marketaylor.synology.me\/?author=1"}]}},"jetpack_featured_media_url":"https:\/\/marketaylor.synology.me\/wp-content\/uploads\/2020\/05\/exit.png","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/marketaylor.synology.me\/index.php?rest_route=\/wp\/v2\/posts\/802","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/marketaylor.synology.me\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/marketaylor.synology.me\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/marketaylor.synology.me\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/marketaylor.synology.me\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=802"}],"version-history":[{"count":5,"href":"https:\/\/marketaylor.synology.me\/index.php?rest_route=\/wp\/v2\/posts\/802\/revisions"}],"predecessor-version":[{"id":807,"href":"https:\/\/marketaylor.synology.me\/index.php?rest_route=\/wp\/v2\/posts\/802\/revisions\/807"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/marketaylor.synology.me\/index.php?rest_route=\/wp\/v2\/media\/714"}],"wp:attachment":[{"href":"https:\/\/marketaylor.synology.me\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=802"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/marketaylor.synology.me\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=802"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/marketaylor.synology.me\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=802"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}