Initial add of defaria.com
[clearscm.git] / defaria.com / blogs / Status / 2006 / 10 / rexec.html
1 <!DOCTYPE html>
2 <html lang="en-us" itemscope itemtype="http://schema.org/Article">
3   <head>
4     <meta charset="utf-8">
5     <meta name="description" content=" Fixed bug in gpdb_add_project.pl Met about MultiSite Hardening Daemon (MSHD)...">
6     <meta name="generator" content="Movable Type 5.2.3">
7     <title>Rexec - Status</title>
8     <link rel="alternate" type="application/atom+xml" title="Recent Entries" href="http://defaria.com/blogs/Status/atom.xml">
9     <link rel="canonical" href="http://defaria.com/blogs/Status/2006/10/rexec.html">
10     <meta name="viewport" content="width=device-width,initial-scale=1">
11     <link rel="stylesheet" href="http://defaria.com/blogs/Status/styles.css">
12     <!--[if lt IE 9]>
13     <link rel="stylesheet" href="http://defaria.com/blogs/Status/styles_ie.css">
14     <script src="/mt/mt-static/support/theme_static/rainier/js/html5shiv.js"></script>
15     <![endif]-->
16     
17     <link rel="start" href="http://defaria.com/blogs/Status/">
18
19     <link rel="prev" href="http://defaria.com/blogs/Status/2006/10/redirecting-on.html" title="Redirecting on ErrorDocument">
20     <link rel="next" href="http://defaria.com/blogs/Status/2006/10/rexec-1.html" title="Rexec">
21     <!-- Open Graph Protocol -->
22     <meta property="og:type" content="article">
23     <meta property="og:locale" content="en-us">
24     <meta property="og:title" content="Rexec">
25     <meta property="og:url" content="http://defaria.com/blogs/Status/2006/10/rexec.html">
26     <meta property="og:description" content=" Fixed bug in gpdb_add_project.pl Met about MultiSite Hardening Daemon (MSHD)...">
27     <meta property="og:site_name" content="Status">
28     <meta property="og:image" content="/mt/mt-static/support/theme_static/rainier/img/siteicon-sample.png">
29     <!-- Metadata -->
30     <meta itemprop="description" content=" Fixed bug in gpdb_add_project.pl Met about MultiSite Hardening Daemon (MSHD)...">
31     <link itemprop="url" href="http://defaria.com/blogs/Status/2006/10/rexec.html">
32     <link itemprop="image" href="/mt/mt-static/support/theme_static/rainier/img/siteicon-sample.png">
33     
34   </head>
35   <body>
36     <div id="container">
37       <div id="container-inner">
38         <header id="header" role="banner">
39           <div id="header-inner">
40             <div id="header-content">
41               <h1>
42                 <a href="http://defaria.com/blogs/Status/">
43
44                   Status
45
46                 </a>
47               </h1>
48               
49             </div>
50
51             <nav role="navigation">
52           <ul>
53             <li><a href="http://defaria.com/blogs/Status/">Home</a></li>
54
55
56           </ul>
57         </nav>
58
59           </div>
60         </header>
61         <div id="content">
62           <div id="content-inner">
63             <ul class="breadcrumb breadcrumb-list">
64               <li class="breadcrumb-list-item"><a href="http://defaria.com/blogs/Status/">Home</a></li>
65               <li class="breadcrumb-list-item">Rexec</li>
66             </ul>
67             <div id="individual-main" class="main" role="main">
68               <article id="entry-1835" class="entry entry-asset asset hentry">
69                 <div class="asset-header">
70                   <h2 itemprop="name" class="asset-name entry-title">Rexec</h2>
71                   <footer class="asset-meta">
72                     <ul class="asset-meta-list">
73                       <li class="asset-meta-list-item">Posted on <time datetime="2006-10-05T15:21:35-08:00" itemprop="datePublished">October  5, 2006</time></li>
74                       <li class="asset-meta-list-item">by <span class="author entry-author vcard"></span></li>
75
76   
77                       <li class="asset-meta-list-item">in <a itemprop="articleSection" rel="tag" href="http://defaria.com/blogs/Status/texas-instruments/">Texas Instruments</a></li>
78   
79
80                    </ul>
81                 </footer>
82                 </div>
83                 <div class="entry-content asset-content" itemprop="articleBody">
84                   <ul>
85   <li>Fixed bug in gpdb_add_project.pl</li>
86
87   <li>Met about MultiSite Hardening Daemon (MSHD)</li>
88 </ul>
89                   <h2>Rexec</h2>
90
91 <p>The gpdb_add_project.pl script utilizes rsh to log into remote sites to execute and otherwise gather data from other sites (Actually it uses rsh locally too but that's another blog entry!). It does this with code like this:</p>
92
93 <div class=code><pre>
94 unless ($site_registry_handle->open("rsh $siteHash{$siteName} -n cat $syncReg |"))  {
95    print ("Can not open rsh $siteHash{$siteName} -n cat $syncReg |.\n");
96    exit;
97 }
98 </pre></div>
99
100 <p>The problem is that the above code will not work. What is returned from the open call here is whether or not the rsh command worked - not whether or not the cat command worked! Indeed open of a pipe returns little - it's the close of the pipe that's going to return the status of the rsh! The status of the cat in this case is never returned. And in this case it was failing. There is no real reliable method for getting the status of the cat command except perhaps to process the remote session using expect or Perl/Expect.</p>
101
102 <p>Since we expect the cat to work and to return lines and because there is a specific format for the first line, I implemented the following:</p>
103
104 <div class=code><pre>
105 sub GetDSRegFile {
106   my $file      = shift;
107   my $server    = shift;
108
109   my @lines;
110
111   if ($server) {
112     @lines = `rsh $server -n cat $file`;
113
114     return undef if $?;
115   } else {
116     @lines = `cat $file`;
117   } # if
118
119   if ($lines [0] and $lines [0] !~ /\#\# SYNC_VERSION 1\.0/) {
120     return undef;
121   } else {
122     return @lines;
123   } # if
124 } # GetDSRegFile
125 </pre></div>
126
127 <p>This solves the problem for this particular case. However this script uses this invalid technique for many other "remote calls" and has potential for error.</p>
128                 </div>
129                 <nav class="page-navigation entry-navigation pagination content-nav">
130                   <ul class="page-navigation-list">
131
132                     <li class="page-navigation-list-item page-navigation-prev"><a rel="prev" href="http://defaria.com/blogs/Status/2006/10/redirecting-on.html" title="Redirecting on ErrorDocument">Previous entry</a></li>
133
134
135                     <li class="page-navigation-list-item page-navigation-next"><a rel="next" href="http://defaria.com/blogs/Status/2006/10/rexec-1.html" title="Rexec">Next entry</a></li>
136
137                   </ul>
138                 </nav>
139                 <!--
140 <aside id="zenback" class="zenback feedback">
141   Please paste Zenback script code here.
142 </aside>
143 -->
144                 
145                 
146               </article>
147             </div>
148             <aside class="widgets related" role="complementary">
149               <nav class="widget-search widget">
150   <div class="widget-content">
151     <form method="get" id="search" action="http://defaria.com/mt/mt-search.cgi">
152       <div>
153         <input type="text" name="search" value="" placeholder="Search...">
154
155         <input type="hidden" name="IncludeBlogs" value="8">
156
157         <input type="hidden" name="limit" value="20">
158         <button type="submit" name="button">
159           <img alt="Search" src="/mt/mt-static/support/theme_static/rainier/img/search-icon.png">
160         </button>
161       </div>
162     </form>
163   </div>
164 </nav>
165 <nav class="widget-archive-category widget">
166   <h3 class="widget-header">Categories</h3>
167   <div class="widget-content">
168     
169       
170     <ul class="widget-list">
171       
172       
173       <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/ameriquest/">Ameriquest (99)</a>
174       
175       
176       </li>
177       
178     
179       
180       
181       <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/audience/">Audience (3)</a>
182       
183       
184       </li>
185       
186     
187       
188       
189       <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/broadcom/">Broadcom (76)</a>
190       
191       
192       </li>
193       
194     
195       
196       
197       <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/gpdb/">GPDB (35)</a>
198       
199       
200       </li>
201       
202     
203       
204       
205       <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/general-dynamics/">General Dynamics (61)</a>
206       
207       
208       </li>
209       
210     
211       
212       
213       <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/general-electric/">General Electric (13)</a>
214       
215       
216       </li>
217       
218     
219       
220       
221       <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/hewlett-packard/">Hewlett Packard (13)</a>
222       
223       
224       </li>
225       
226     
227       
228       
229       <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/lynuxworks/">LynuxWorks (162)</a>
230       
231       
232       </li>
233       
234     
235       
236       
237       <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/pqa/">PQA (35)</a>
238       
239       
240       </li>
241       
242     
243       
244       
245       <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/salira/">Salira (79)</a>
246       
247       
248       </li>
249       
250     
251       
252       
253       <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/tellabs/">Tellabs (2)</a>
254       
255       
256       </li>
257       
258     
259       
260       
261       <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/texas-instruments/">Texas Instruments (31)</a>
262       
263       
264       </li>
265       
266     </ul>
267       
268     
269   </div>
270 </nav>
271   
272
273 <nav class="widget-archive-dropdown widget">
274   <h3 class="widget-header">Archives</h3>
275   <div class="widget-content">
276     <select>
277       <option>Select a Month...</option>
278     
279       <option value="http://defaria.com/blogs/Status/2016/02/">February 2016</option>
280     
281   
282     
283       <option value="http://defaria.com/blogs/Status/2014/09/">September 2014</option>
284     
285   
286     
287       <option value="http://defaria.com/blogs/Status/2014/04/">April 2014</option>
288     
289   
290     
291       <option value="http://defaria.com/blogs/Status/2014/03/">March 2014</option>
292     
293   
294     
295       <option value="http://defaria.com/blogs/Status/2013/02/">February 2013</option>
296     
297   
298     
299       <option value="http://defaria.com/blogs/Status/2012/09/">September 2012</option>
300     
301   
302     
303       <option value="http://defaria.com/blogs/Status/2012/08/">August 2012</option>
304     
305   
306     
307       <option value="http://defaria.com/blogs/Status/2012/05/">May 2012</option>
308     
309   
310     
311       <option value="http://defaria.com/blogs/Status/2012/04/">April 2012</option>
312     
313   
314     
315       <option value="http://defaria.com/blogs/Status/2012/02/">February 2012</option>
316     
317   
318     
319       <option value="http://defaria.com/blogs/Status/2012/01/">January 2012</option>
320     
321   
322     
323       <option value="http://defaria.com/blogs/Status/2011/10/">October 2011</option>
324     
325   
326     
327       <option value="http://defaria.com/blogs/Status/2011/07/">July 2011</option>
328     
329   
330     
331       <option value="http://defaria.com/blogs/Status/2010/09/">September 2010</option>
332     
333   
334     
335       <option value="http://defaria.com/blogs/Status/2010/08/">August 2010</option>
336     
337   
338     
339       <option value="http://defaria.com/blogs/Status/2010/04/">April 2010</option>
340     
341   
342     
343       <option value="http://defaria.com/blogs/Status/2010/03/">March 2010</option>
344     
345   
346     
347       <option value="http://defaria.com/blogs/Status/2010/02/">February 2010</option>
348     
349   
350     
351       <option value="http://defaria.com/blogs/Status/2009/05/">May 2009</option>
352     
353   
354     
355       <option value="http://defaria.com/blogs/Status/2009/04/">April 2009</option>
356     
357   
358     
359       <option value="http://defaria.com/blogs/Status/2008/07/">July 2008</option>
360     
361   
362     
363       <option value="http://defaria.com/blogs/Status/2008/05/">May 2008</option>
364     
365   
366     
367       <option value="http://defaria.com/blogs/Status/2008/04/">April 2008</option>
368     
369   
370     
371       <option value="http://defaria.com/blogs/Status/2008/03/">March 2008</option>
372     
373   
374     
375       <option value="http://defaria.com/blogs/Status/2008/02/">February 2008</option>
376     
377   
378     
379       <option value="http://defaria.com/blogs/Status/2008/01/">January 2008</option>
380     
381   
382     
383       <option value="http://defaria.com/blogs/Status/2007/12/">December 2007</option>
384     
385   
386     
387       <option value="http://defaria.com/blogs/Status/2007/11/">November 2007</option>
388     
389   
390     
391       <option value="http://defaria.com/blogs/Status/2007/10/">October 2007</option>
392     
393   
394     
395       <option value="http://defaria.com/blogs/Status/2007/09/">September 2007</option>
396     
397   
398     
399       <option value="http://defaria.com/blogs/Status/2007/08/">August 2007</option>
400     
401   
402     
403       <option value="http://defaria.com/blogs/Status/2007/07/">July 2007</option>
404     
405   
406     
407       <option value="http://defaria.com/blogs/Status/2007/06/">June 2007</option>
408     
409   
410     
411       <option value="http://defaria.com/blogs/Status/2007/05/">May 2007</option>
412     
413   
414     
415       <option value="http://defaria.com/blogs/Status/2007/04/">April 2007</option>
416     
417   
418     
419       <option value="http://defaria.com/blogs/Status/2007/03/">March 2007</option>
420     
421   
422     
423       <option value="http://defaria.com/blogs/Status/2007/01/">January 2007</option>
424     
425   
426     
427       <option value="http://defaria.com/blogs/Status/2006/12/">December 2006</option>
428     
429   
430     
431       <option value="http://defaria.com/blogs/Status/2006/11/">November 2006</option>
432     
433   
434     
435       <option value="http://defaria.com/blogs/Status/2006/10/">October 2006</option>
436     
437   
438     
439       <option value="http://defaria.com/blogs/Status/2006/09/">September 2006</option>
440     
441   
442     
443       <option value="http://defaria.com/blogs/Status/2006/07/">July 2006</option>
444     
445   
446     
447       <option value="http://defaria.com/blogs/Status/2006/06/">June 2006</option>
448     
449   
450     
451       <option value="http://defaria.com/blogs/Status/2006/05/">May 2006</option>
452     
453   
454     
455       <option value="http://defaria.com/blogs/Status/2006/04/">April 2006</option>
456     
457   
458     
459       <option value="http://defaria.com/blogs/Status/2006/03/">March 2006</option>
460     
461   
462     
463       <option value="http://defaria.com/blogs/Status/2006/02/">February 2006</option>
464     
465   
466     
467       <option value="http://defaria.com/blogs/Status/2006/01/">January 2006</option>
468     
469   
470     
471       <option value="http://defaria.com/blogs/Status/2005/12/">December 2005</option>
472     
473   
474     
475       <option value="http://defaria.com/blogs/Status/2005/11/">November 2005</option>
476     
477   
478     
479       <option value="http://defaria.com/blogs/Status/2005/10/">October 2005</option>
480     
481   
482     
483       <option value="http://defaria.com/blogs/Status/2005/09/">September 2005</option>
484     
485   
486     
487       <option value="http://defaria.com/blogs/Status/2005/08/">August 2005</option>
488     
489   
490     
491       <option value="http://defaria.com/blogs/Status/2005/07/">July 2005</option>
492     
493   
494     
495       <option value="http://defaria.com/blogs/Status/2005/06/">June 2005</option>
496     
497   
498     
499       <option value="http://defaria.com/blogs/Status/2005/05/">May 2005</option>
500     
501   
502     
503       <option value="http://defaria.com/blogs/Status/2005/04/">April 2005</option>
504     
505   
506     
507       <option value="http://defaria.com/blogs/Status/2005/03/">March 2005</option>
508     
509   
510     
511       <option value="http://defaria.com/blogs/Status/2005/02/">February 2005</option>
512     
513   
514     
515       <option value="http://defaria.com/blogs/Status/2005/01/">January 2005</option>
516     
517   
518     
519       <option value="http://defaria.com/blogs/Status/2004/12/">December 2004</option>
520     
521   
522     
523       <option value="http://defaria.com/blogs/Status/2004/09/">September 2004</option>
524     
525   
526     
527       <option value="http://defaria.com/blogs/Status/2004/08/">August 2004</option>
528     
529   
530     
531       <option value="http://defaria.com/blogs/Status/2004/07/">July 2004</option>
532     
533   
534     
535       <option value="http://defaria.com/blogs/Status/2004/06/">June 2004</option>
536     
537   
538     
539       <option value="http://defaria.com/blogs/Status/2004/05/">May 2004</option>
540     
541   
542     
543       <option value="http://defaria.com/blogs/Status/2004/04/">April 2004</option>
544     
545   
546     
547       <option value="http://defaria.com/blogs/Status/2004/03/">March 2004</option>
548     
549   
550     
551       <option value="http://defaria.com/blogs/Status/2004/02/">February 2004</option>
552     
553   
554     
555       <option value="http://defaria.com/blogs/Status/2004/01/">January 2004</option>
556     
557   
558     
559       <option value="http://defaria.com/blogs/Status/2003/12/">December 2003</option>
560     
561   
562     
563       <option value="http://defaria.com/blogs/Status/2003/11/">November 2003</option>
564     
565     </select>
566   </div>
567 </nav>
568     
569   
570
571 <div class="widget-syndication widget section">
572   <div class="widget-content">
573     <p><img src="http://defaria.com/mt/mt-static/images/status_icons/feed.gif" alt="Subscribe to feed" width="9" height="9" /> <a href="http://defaria.com/blogs/Status/atom.xml">Subscribe to this blog's feed</a></p>
574
575   </div>
576 </div>
577
578             </aside>
579           </div>
580         </div>
581         <footer id="footer" role="contentinfo">
582           <div id="footer-inner">
583             <div id="footer-content">
584   <nav role="navigation">
585           <ul>
586             <li><a href="http://defaria.com/blogs/Status/">Home</a></li>
587
588
589           </ul>
590         </nav>
591
592   <p class="license">&copy; Copyright 2016.</p>
593   <p class="poweredby">Powered by <a href="http://www.movabletype.org/">Movable Type</a></p>
594 </div>
595           </div>
596         </footer>
597       </div>
598     </div>
599     <script src="http://defaria.com/mt/mt-static/jquery/jquery.min.js"></script>
600     <script src="http://defaria.com/blogs/Status/mt-theme-scale2.js"></script>
601   </body>
602 </html>