Back to home page

Enduro/X

 
 

    


0001 /**
0002  * @brief Aliasing limits, and -N processing
0003  *
0004  * @file atmisv34_23.c
0005  */
0006 /* -----------------------------------------------------------------------------
0007  * Enduro/X Middleware Platform for Distributed Transaction Processing
0008  * Copyright (C) 2009-2016, ATR Baltic, Ltd. All Rights Reserved.
0009  * Copyright (C) 2017-2023, Mavimax, Ltd. All Rights Reserved.
0010  * This software is released under one of the following licenses:
0011  * AGPL (with Java and Go exceptions) or Mavimax's license for commercial use.
0012  * See LICENSE file for full text.
0013  * -----------------------------------------------------------------------------
0014  * AGPL license:
0015  * 
0016  * This program is free software; you can redistribute it and/or modify it under
0017  * the terms of the GNU Affero General Public License, version 3 as published
0018  * by the Free Software Foundation;
0019  *
0020  * This program is distributed in the hope that it will be useful, but WITHOUT ANY
0021  * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
0022  * PARTICULAR PURPOSE. See the GNU Affero General Public License, version 3
0023  * for more details.
0024  *
0025  * You should have received a copy of the GNU Affero General Public License along 
0026  * with this program; if not, write to the Free Software Foundation, Inc., 
0027  * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
0028  *
0029  * -----------------------------------------------------------------------------
0030  * A commercial use license is available from Mavimax, Ltd
0031  * contact@mavimax.com
0032  * -----------------------------------------------------------------------------
0033  */
0034 #include <stdio.h>
0035 #include <stdlib.h>
0036 #include <ndebug.h>
0037 #include <atmi.h>
0038 #include <ndrstandard.h>
0039 #include <ubf.h>
0040 #include <test.fd.h>
0041 #include <string.h>
0042 #include <unistd.h>
0043 #include <thlock.h>
0044 #include "exassert.h"
0045 
0046 /*---------------------------Externs------------------------------------*/
0047 /*---------------------------Macros-------------------------------------*/
0048 /*---------------------------Enums--------------------------------------*/
0049 /*---------------------------Typedefs-----------------------------------*/
0050 /*---------------------------Globals------------------------------------*/
0051 /*---------------------------Statics------------------------------------*/
0052 /*---------------------------Prototypes---------------------------------*/
0053 
0054 /**
0055  * Standard service entry, function
0056  */
0057 void T3 (TPSVCINFO *p_svc)
0058 {
0059     int ret=EXSUCCEED;
0060     UBFH *p_ub = (UBFH *)p_svc->data;
0061     
0062 out:
0063     tpreturn(  ret==EXSUCCEED?TPSUCCESS:TPFAIL,
0064                 0L,
0065                 (char *)p_ub,
0066                 0L,
0067                 0L);
0068 }
0069 
0070 /**
0071  * Do initialisation
0072  */
0073 int tpsvrinit(int argc, char **argv)
0074 {
0075     int ret = EXSUCCEED;
0076     NDRX_LOG(log_debug, "tpsvrinit called");
0077 out:
0078     return ret;
0079 }
0080 
0081 /**
0082  * Do de-initialisation
0083  */
0084 void tpsvrdone(void)
0085 {
0086     NDRX_LOG(log_debug, "tpsvrdone called");
0087 }
0088 
0089 /* Auto generated system advertise table */
0090 expublic struct tmdsptchtbl_t ndrx_G_tmdsptchtbl[] = {
0091     { "", "T3", T3, 0, 0 }
0092     ,{ "A3AAAAA1", "T3", T3, 0, 0 }
0093     ,{ "A3AAAAA2", "T3", T3, 0, 0 }
0094     ,{ "A3AAAAA3", "T3", T3, 0, 0 }
0095     ,{ "A3AAAAA4", "T3", T3, 0, 0 }
0096     ,{ "A3AAAAA5", "T3", T3, 0, 0 }
0097     ,{ "A3AAAAA6", "T3", T3, 0, 0 }
0098     ,{ "A3AAAAA7", "T3", T3, 0, 0 }
0099     ,{ "A3AAAAA8", "T3", T3, 0, 0 }
0100     ,{ "A3AAAAA9", "T3", T3, 0, 0 }
0101     ,{ "A3AAAAA10", "T3", T3, 0, 0 }
0102     ,{ "A3AAAAA11", "T3", T3, 0, 0 }
0103     ,{ "A3AAAAA12", "T3", T3, 0, 0 }
0104     ,{ "A3AAAAA13", "T3", T3, 0, 0 }
0105     ,{ "A3AAAAA14", "T3", T3, 0, 0 }
0106     ,{ "A3AAAAA15", "T3", T3, 0, 0 }
0107     ,{ "A3AAAAA16", "T3", T3, 0, 0 }
0108     ,{ "A3AAAAA17", "T3", T3, 0, 0 }
0109     ,{ "A3AAAAA18", "T3", T3, 0, 0 }
0110     ,{ "A3AAAAA19", "T3", T3, 0, 0 }
0111     ,{ "A3AAAAA20", "T3", T3, 0, 0 }
0112     ,{ "A3AAAAA21", "T3", T3, 0, 0 }
0113     ,{ "A3AAAAA22", "T3", T3, 0, 0 }
0114     ,{ "A3AAAAA23", "T3", T3, 0, 0 }
0115     ,{ "A3AAAAA24", "T3", T3, 0, 0 }
0116     ,{ "A3AAAAA25", "T3", T3, 0, 0 }
0117     ,{ "A3AAAAA26", "T3", T3, 0, 0 }
0118     ,{ "A3AAAAA27", "T3", T3, 0, 0 }
0119     ,{ "A3AAAAA28", "T3", T3, 0, 0 }
0120     ,{ "A3AAAAA29", "T3", T3, 0, 0 }
0121     ,{ "A3AAAAA30", "T3", T3, 0, 0 }
0122     ,{ "A3AAAAA31", "T3", T3, 0, 0 }
0123     ,{ "A3AAAAA32", "T3", T3, 0, 0 }
0124     ,{ "A3AAAAA33", "T3", T3, 0, 0 }
0125     ,{ "A3AAAAA34", "T3", T3, 0, 0 }
0126     ,{ "A3AAAAA35", "T3", T3, 0, 0 }
0127     ,{ "A3AAAAA36", "T3", T3, 0, 0 }
0128     ,{ "A3AAAAA37", "T3", T3, 0, 0 }
0129     ,{ "A3AAAAA38", "T3", T3, 0, 0 }
0130     ,{ "A3AAAAA39", "T3", T3, 0, 0 }
0131     ,{ "A3AAAAA40", "T3", T3, 0, 0 }
0132     ,{ "A3AAAAA41", "T3", T3, 0, 0 }
0133     ,{ "A3AAAAA42", "T3", T3, 0, 0 }
0134     ,{ "A3AAAAA43", "T3", T3, 0, 0 }
0135     ,{ "A3AAAAA44", "T3", T3, 0, 0 }
0136     ,{ "A3AAAAA45", "T3", T3, 0, 0 }
0137     ,{ "A3AAAAA46", "T3", T3, 0, 0 }
0138     ,{ "A3AAAAA47", "T3", T3, 0, 0 }
0139     ,{ "A3AAAAA48", "T3", T3, 0, 0 }
0140     ,{ "A3AAAAA49", "T3", T3, 0, 0 }
0141     ,{ "A3AAAAA50", "T3", T3, 0, 0 }
0142     ,{ "A3AAAAA51", "T3", T3, 0, 0 }
0143     ,{ "A3AAAAA52", "T3", T3, 0, 0 }
0144     ,{ "A3AAAAA53", "T3", T3, 0, 0 }
0145     ,{ "A3AAAAA54", "T3", T3, 0, 0 }
0146     ,{ "A3AAAAA55", "T3", T3, 0, 0 }
0147     ,{ "A3AAAAA56", "T3", T3, 0, 0 }
0148     ,{ "A3AAAAA57", "T3", T3, 0, 0 }
0149     ,{ "A3AAAAA58", "T3", T3, 0, 0 }
0150     ,{ "A3AAAAA59", "T3", T3, 0, 0 }
0151     ,{ "A3AAAAA60", "T3", T3, 0, 0 }
0152     ,{ "A3AAAAA61", "T3", T3, 0, 0 }
0153     ,{ "A3AAAAA62", "T3", T3, 0, 0 }
0154     ,{ "A3AAAAA63", "T3", T3, 0, 0 }
0155     ,{ "A3AAAAA64", "T3", T3, 0, 0 }
0156     ,{ "A3AAAAA65", "T3", T3, 0, 0 }
0157     ,{ "A3AAAAA66", "T3", T3, 0, 0 }
0158     ,{ "A3AAAAA67", "T3", T3, 0, 0 }
0159     ,{ "A3AAAAA68", "T3", T3, 0, 0 }
0160     ,{ "A3AAAAA69", "T3", T3, 0, 0 }
0161     ,{ "A3AAAAA70", "T3", T3, 0, 0 }
0162     ,{ "A3AAAAA71", "T3", T3, 0, 0 }
0163     ,{ "A3AAAAA72", "T3", T3, 0, 0 }
0164     ,{ "A3AAAAA73", "T3", T3, 0, 0 }
0165     ,{ "A3AAAAA74", "T3", T3, 0, 0 }
0166     ,{ "A3AAAAA75", "T3", T3, 0, 0 }
0167     ,{ "A3AAAAA76", "T3", T3, 0, 0 }
0168     ,{ "A3AAAAA77", "T3", T3, 0, 0 }
0169     ,{ "A3AAAAA78", "T3", T3, 0, 0 }
0170     ,{ "A3AAAAA79", "T3", T3, 0, 0 }
0171     ,{ "A3AAAAA80", "T3", T3, 0, 0 }
0172     ,{ "A3AAAAA81", "T3", T3, 0, 0 }
0173     ,{ "A3AAAAA82", "T3", T3, 0, 0 }
0174     ,{ "A3AAAAA83", "T3", T3, 0, 0 }
0175     ,{ "A3AAAAA84", "T3", T3, 0, 0 }
0176     ,{ "A3AAAAA85", "T3", T3, 0, 0 }
0177     ,{ "A3AAAAA86", "T3", T3, 0, 0 }
0178     ,{ "A3AAAAA87", "T3", T3, 0, 0 }
0179     ,{ "A3AAAAA88", "T3", T3, 0, 0 }
0180     ,{ "A3AAAAA89", "T3", T3, 0, 0 }
0181     ,{ "A3AAAAA90", "T3", T3, 0, 0 }
0182     ,{ "A3AAAAA91", "T3", T3, 0, 0 }
0183     ,{ "A3AAAAA92", "T3", T3, 0, 0 }
0184     ,{ "A3AAAAA93", "T3", T3, 0, 0 }
0185     ,{ "A3AAAAA94", "T3", T3, 0, 0 }
0186     ,{ "A3AAAAA95", "T3", T3, 0, 0 }
0187     ,{ "A3AAAAA96", "T3", T3, 0, 0 }
0188     ,{ "A3AAAAA97", "T3", T3, 0, 0 }
0189     ,{ "A3AAAAA98", "T3", T3, 0, 0 }
0190     ,{ "A3AAAAA99", "T3", T3, 0, 0 }
0191     ,{ "A3AAAAA100", "T3", T3, 0, 0 }
0192     , { NULL, NULL, NULL, 0, 0 }
0193 };
0194 /*---------------------------Prototypes---------------------------------*/
0195 
0196 /**
0197  * Main entry for tmsrv
0198  */
0199 int main( int argc, char** argv )
0200 {
0201     _tmbuilt_with_thread_option=EXTRUE;
0202     struct tmsvrargs_t tmsvrargs =
0203     {
0204         &tmnull_switch,
0205         &ndrx_G_tmdsptchtbl[0],
0206         0,
0207         tpsvrinit,
0208         tpsvrdone,
0209         NULL,
0210         NULL,
0211         NULL,
0212         NULL,
0213         NULL,
0214         tpsvrthrinit,
0215         tpsvrthrdone
0216     };
0217     
0218     return( _tmstartserver( argc, argv, &tmsvrargs ));
0219     
0220 }
0221 
0222 
0223 /* vim: set ts=4 sw=4 et smartindent: */