Changeset 18349
- Timestamp:
- 10/29/15 19:53:37 (9 years ago)
- Location:
- trunk/FACT++/dim
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/FACT++/dim/README_v20.txt
r18097 r18349 1 1 2 DIM version 20r1 3Release Notes2 DIM version 20r15 Release Notes 3 3 4 4 Notes 1 and 2 for Unix Users only … … 17 17 Dns </dev/null >& dns.log & 18 18 19 NOTE 3: The Version Number service provided by servers is now set to 2013. 19 NOTE 3: The Version Number service provided by servers is now set to 2015. 20 21 01/09/2015 22 Changes for version 2015: 23 - A DIM Server did not properly accept a DimServer::stop(), folowed by a DimServer::start(), 24 also DID didn't cope with the above, in particular if the server changed name - Fixed. 25 26 27 09/03/2015 28 Changes for version 2014: 29 - A DIM command could be discarded if the DNS connection went stale and the first attempt 30 to use it was to send a command. (Introduced a Keepalive between clients and the DNS) 31 20 32 21 33 22/01/2014 -
trunk/FACT++/dim/dim/dim.h
r18097 r18349 14 14 #include "dim_common.h" 15 15 16 #define DIM_VERSION_NUMBER 201 316 #define DIM_VERSION_NUMBER 2015 17 17 18 18 -
trunk/FACT++/dim/src/dic.c
r18058 r18349 30 30 31 31 #define BAD_CONN_TIMEOUT 2 32 33 32 34 33 typedef struct bad_conn { … … 498 497 break; 499 498 case STA_CONN: /* connection received */ 499 dna_set_test_write(conn_id, 2*(dim_get_keepalive_timeout())); 500 500 if(Dns_dic_conn_id < 0) 501 501 { … … 549 549 size = 0; 550 550 (servp->user_routine)( &servp->tag, &size ); 551 } 552 else 553 { 554 if((servp->pending == WAITING_DNS_UP) || (servp->pending == WAITING_DNS_ANSWER)) 555 { 556 dim_print_date_time(); 557 printf(" Client Sending Command: Command %s discarded, no DNS answer\n", servp->serv_name); 558 fflush(stdout); 559 } 560 /* 561 else if(servp->pending == WAITING_SERVER_UP) 562 { 563 } 564 */ 551 565 } 552 566 dic_release_service( (unsigned)servp->serv_id ); -
trunk/FACT++/dim/src/did/did.c
r15282 r18349 2341 2341 buffer->server.pid = vtohl(buffer->server.pid); 2342 2342 n_services = buffer->server.n_services; 2343 2343 /* 2344 printf("received pid %d, nservices %d\n",buffer->server.pid, n_services); 2345 */ 2344 2346 if(n_services == 1) 2345 2347 return; 2346 2348 strcpy(sname, buffer->server.task); 2349 /* 2350 printf("name = %s\n", sname); 2351 */ 2347 2352 if(n_services > 1) 2348 2353 { … … 2410 2415 } 2411 2416 servp->busy = 1; 2417 if(strcmp(servp->name, sname)) 2418 { 2419 strcpy(servp->name,sname); 2420 Force_update = 1; 2421 servp->busy = 3; 2422 } 2412 2423 } 2413 2424 else … … 2526 2537 } 2527 2538 server_ptr = &servp->server; 2539 if(servp->busy == 3) 2540 { 2541 remove_button(servp); 2542 servp->busy = 1; 2543 } 2528 2544 if(servp->busy == 1) 2529 2545 { -
trunk/FACT++/dim/src/dis.c
r15282 r18349 223 223 void dis_dns_init(); 224 224 225 dim_init(); 225 226 dis_dns_init(); 226 227 { -
trunk/FACT++/dim/src/examples/test_server.cxx
r15282 r18349 142 142 newDns = new DimServerDns(extraDns, 0, (char *)"new_TEST"); 143 143 144 /* 145 int i, arr[15000]; 146 DimService *servp; 147 DimCommand *cmndp; 148 char str[132]; 149 */ 144 // int i, arr[15000]; 145 // DimService *servp; 146 // DimCommand *cmndp; 147 // char str[132]; 148 150 149 // float farr[4]; 151 150 // DimService *farrp; … … 173 172 174 173 175 /*176 174 // DimServer::autoStartOff(); 177 DimServer::start("TEST");178 179 for(i = 0; i < 15000; i++)180 {181 arr[i] = i;182 sprintf(str,"ServiceManyTest/%05d",i);183 servp = new DimService(str,arr[i]);184 servp->setQuality(1);185 servp->updateService(arr[i]);186 175 // DimServer::start("TEST"); 187 sprintf(str,"CommandManyTest/%05d",i); 188 cmndp = new CmndServMany(str); 189 // DimServer::start("TEST"); 190 } 191 */ 176 177 // for(i = 0; i < 15000; i++) 178 // { 179 // arr[i] = i; 180 // sprintf(str,"ServiceManyTest/%05d",i); 181 // servp = new DimService(str,arr[i]); 182 // servp->setQuality(1); 183 // servp->updateService(arr[i]); 184 //// DimServer::start("TEST"); 185 // sprintf(str,"CommandManyTest/%05d",i); 186 // cmndp = new CmndServMany(str); 187 //// DimServer::start("TEST"); 188 // } 189 192 190 while(1) 193 191 { 194 192 sleep(5); 195 /* 196 while(cmdsvr.hasNext())197 {198 cmdsvr.getNext();199 cmdsvr.handleIt();200 }201 */ 193 194 // while(cmdsvr.hasNext()) 195 // { 196 // cmdsvr.getNext(); 197 // cmdsvr.handleIt(); 198 // } 199 202 200 s1 = "hello1"; 203 201 if(!boolval) … … 217 215 } 218 216 217 /* 218 int main() 219 { 220 DimService *servint, *newServint; 221 int ival = 0; 222 223 DimServer::start("TEST"); 224 servint = new DimService("TEST/INTVAL",ival); 225 sleep(20); 226 DimServer::stop(); 227 sleep(1); 228 DimServer::start("TESTOTHER"); 229 newServint = new DimService("TESTOTHER/INTVAL",ival); 230 sleep(20); 231 DimServer::stop(); 232 } 233 */
Note:
See TracChangeset
for help on using the changeset viewer.