Ethereal-dev: [ethereal-dev] ethereal 0.8.3

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: Eric Lassauge <ros_at1@xxxxxxxxxxxxxxxxxxx>
Date: Thu, 03 Feb 2000 13:25:20 +0100
	Hi, 
I found a little problem on ethereal in the plugin management. I
enclosed
a little patch to correct this:
If you don't have the std_plug_dir AND local_plug_dir the code didn't
check the PLUGIN_DIR (from config.h created by the configure stuff). I
saw
the problem because I didn't installed in the default directories:

---------------CUT HERE
----------------------------------------------------
*** ethereal-0.8.3/plugins.c.orig       Thu Feb  3 07:35:41 2000
--- ethereal-0.8.3/plugins.c    Thu Feb  3 07:40:23 2000
***************
*** 435,450 ****
          if ((strcmp(std_plug_dir, PLUGIN_DIR) != 0) &&
              (strcmp(local_plug_dir, PLUGIN_DIR) != 0))
          {
!           if (stat(std_plug_dir, &std_dir_stat) == 0 &&
!               stat(local_plug_dir, &local_dir_stat) == 0 &&
!               stat(PLUGIN_DIR, &plugin_dir_stat) == 0)
            {
!               /* check if PLUGIN_DIR is really different from std_dir
and local_dir */
!               if ((plugin_dir_stat.st_dev != std_dir_stat.st_dev ||
!                    plugin_dir_stat.st_ino != std_dir_stat.st_ino) &&
!                   (plugin_dir_stat.st_dev != local_dir_stat.st_dev ||
!                    plugin_dir_stat.st_ino != local_dir_stat.st_ino))
                    plugins_scan_dir(PLUGIN_DIR);
            }
          }
        if (!user_plug_dir)
--- 435,464 ----
          if ((strcmp(std_plug_dir, PLUGIN_DIR) != 0) &&
              (strcmp(local_plug_dir, PLUGIN_DIR) != 0))
          {
!           if (stat(PLUGIN_DIR, &plugin_dir_stat) == 0)
            {
!               /* check if PLUGIN_DIR is really different from std_dir
and local_dir if they exist ! */
!               if (stat(std_plug_dir, &std_dir_stat) == 0)
!                 {
!                   if (stat(local_plug_dir, &local_dir_stat) == 0)
!                     {
!                      if ((plugin_dir_stat.st_dev !=
std_dir_stat.st_dev ||
!                           plugin_dir_stat.st_ino !=
std_dir_stat.st_ino) &&
!                          (plugin_dir_stat.st_dev !=
local_dir_stat.st_dev ||
!                           plugin_dir_stat.st_ino !=
local_dir_stat.st_ino))
!                          plugins_scan_dir(PLUGIN_DIR);
!                     }
!                     else
!                     {
!                      if ((plugin_dir_stat.st_dev !=
std_dir_stat.st_dev ||
!                           plugin_dir_stat.st_ino !=
std_dir_stat.st_ino))
!                          plugins_scan_dir(PLUGIN_DIR);
!                     }
!                 }
!                 else
!                 {
                    plugins_scan_dir(PLUGIN_DIR);
+                 }
            }
          }
        if (!user_plug_dir)
---------------CUT HERE
----------------------------------------------------

	Hope it will help !

PS:
% uname -sr
SunOS 5.5.1
% gtk-config --version
1.2.6
% ethereal -v
ethereal 0.8.3, with GTK+ 1.2.6, with libpcap 0.4, with libz 1.1.3,
without SNMP
--
	      +---------------------------------------+
	      |	Eric Lassauge                         |
	      |	MATRA MARCONI SPACE / DATUS SUD-OUEST |
	      +---------------------------------------+
	      |	       lassauge@xxxxxxxxxxxxxx        |
	      |	     ros_at1@xxxxxxxxxxxxxxxxxxx      |
	      |	http://perso.libertysurf.fr/lassauge/ |
	      +---------------------------------------+