RPM Package Manager, CVS Repository http://rpm5.org/cvs/ ____________________________________________________________________________
Server: rpm5.org Name: Jeff Johnson Root: /v/rpm/cvs Email: j...@rpm5.org Module: rpm Date: 14-Jul-2016 13:32:57 Branch: rpm-5_4 Handle: 2016071411325700 Modified files: (Branch: rpm-5_4) rpm/rpmio rpmmqtt.c Log: - mqtt: select module based on argv[0]. Summary: Revision Changes Path 1.1.2.23 +32 -22 rpm/rpmio/rpmmqtt.c ____________________________________________________________________________ patch -p0 <<'@@ .' Index: rpm/rpmio/rpmmqtt.c ============================================================================ $ cvs diff -u -r1.1.2.22 -r1.1.2.23 rpmmqtt.c --- rpm/rpmio/rpmmqtt.c 14 Jul 2016 11:09:49 -0000 1.1.2.22 +++ rpm/rpmio/rpmmqtt.c 14 Jul 2016 11:32:57 -0000 1.1.2.23 @@ -3746,10 +3746,42 @@ { const char *arg0 = poptGetInvocationName(con); const char * _progname; const char * _progmode; + if ((_progname = strrchr(arg0, '/')) != NULL) _progname++; else _progname = arg0; if (!strncmp(_progname, "lt-", sizeof("lt-")-1)) _progname += sizeof("lt-")-1; + + /* XXX initialized based on %__mqtt_module */ + /* XXX initialized based on av[1] */ + /* XXX initialized based on URI scheme */ +#ifdef WITH_PAHO + if (mqtt->vec == NULL + && (strstr(_progname, "paho") || strstr(_progname, "mqtt"))) + mqtt->vec = &pahoVec; +#endif +#ifdef WITH_MOSQUITTO + if (mqtt->vec == NULL + && (strstr(_progname, "mosquitto") || strstr(_progname, "mosq") || strstr(_progname, "mqtt"))) + mqtt->vec = &mosqVec; +#endif +#ifdef WITH_RABBITMQ + if (mqtt->vec == NULL + && (strstr(_progname, "rabbitmq") || strstr(_progname, "amqp"))) + mqtt->vec = &amqpVec; +#endif +#ifdef WITH_PROTON + if (mqtt->vec == NULL + && (strstr(_progname, "proton") || strstr(_progname, "qpid") strstr(_progname, "amqp"))) + mqtt->vec = &qpidVec; +#endif +#ifdef WITH_ZEROMQ + if (mqtt->vec == NULL + && (strstr(_progname, "zeromq") || strstr(_progname, "zmq"))) + mqtt->vec = &zmqVec; +#endif + /* XXX mqtt->vec default? */ + _progmode = (strstr(_progname, "sub") ? "sub" : "pub"); mqtt->_progname = xstrdup(_progname); mqtt->_progmode = xstrdup(_progmode); @@ -4319,28 +4351,6 @@ { int xx; - /* XXX these need to be initialized based on URI scheme */ -#ifdef WITH_PAHO - if (mqtt->vec == NULL) - mqtt->vec = &pahoVec; -#endif -#ifdef WITH_MOSQUITTO - if (mqtt->vec == NULL) - mqtt->vec = &mosqVec; -#endif -#ifdef WITH_RABBITMQ - if (mqtt->vec == NULL) - mqtt->vec = &amqpVec; -#endif -#ifdef WITH_PROTON - if (mqtt->vec == NULL) - mqtt->vec = &qpidVec; -#endif -#ifdef WITH_ZEROMQ - if (mqtt->vec == NULL) - mqtt->vec = &zmqVec; -#endif - xx = rpmmqttCreate(mqtt); /* Prepare for subscription delivery. */ @@ . ______________________________________________________________________ RPM Package Manager http://rpm5.org CVS Sources Repository rpm-cvs@rpm5.org