Diff for /embedaddon/sudo/src/preload.c between versions 1.1 and 1.1.1.4

version 1.1, 2012/02/21 16:23:02 version 1.1.1.4, 2014/06/15 16:12:55
Line 1 Line 1
 /*  /*
 * Copyright (c) 2010 Todd C. Miller <Todd.Miller@courtesan.com> * Copyright (c) 2010, 2011, 2013 Todd C. Miller <Todd.Miller@courtesan.com>
  *   *
  * Permission to use, copy, modify, and distribute this software for any   * Permission to use, copy, modify, and distribute this software for any
  * purpose with or without fee is hereby granted, provided that the above   * purpose with or without fee is hereby granted, provided that the above
Line 16 Line 16
   
 #include <config.h>  #include <config.h>
   
   #ifdef HAVE_GSS_KRB5_CCACHE_NAME
   # if defined(HAVE_GSSAPI_GSSAPI_KRB5_H)
   #  include <gssapi/gssapi.h>
   #  include <gssapi/gssapi_krb5.h>
   # elif defined(HAVE_GSSAPI_GSSAPI_H)
   #  include <gssapi/gssapi.h>
   # else
   #  include <gssapi.h>
   # endif
   #endif
   
 #include "sudo_plugin.h"  #include "sudo_plugin.h"
   #include "sudo_dso.h"
   
   #ifdef STATIC_SUDOERS_PLUGIN
   
 extern struct policy_plugin sudoers_policy;  extern struct policy_plugin sudoers_policy;
 extern struct io_plugin sudoers_io;  extern struct io_plugin sudoers_io;
   
struct sudo_preload_table {static struct sudo_preload_symbol sudo_rtld_default_symbols[] = {
    const char *name;# ifdef HAVE_GSS_KRB5_CCACHE_NAME
    void *address;    { "gss_krb5_ccache_name", (void *)&gss_krb5_ccache_name},
} sudo_preload_table[] = {# endif
    { "sudoers_policy", (void *) &sudoers_policy}, 
    { "sudoers_io", (void *) &sudoers_io}, 
     { (const char *)0, (void *)0 }      { (const char *)0, (void *)0 }
 };  };
   
   /* XXX - can we autogenerate these? */
   static struct sudo_preload_symbol sudo_sudoers_plugin_symbols[] = {
       { "sudoers_policy", (void *)&sudoers_policy},
       { "sudoers_io", (void *)&sudoers_io},
       { (const char *)0, (void *)0 }
   };
   
   /*
    * Statically compiled symbols indexed by handle.
    */
   static struct sudo_preload_table sudo_preload_table[] = {
       { (char *)0, SUDO_DSO_DEFAULT, sudo_rtld_default_symbols },
       { "sudoers.so", &sudo_sudoers_plugin_symbols, sudo_sudoers_plugin_symbols },
       { (char *)0, (void *)0, (struct sudo_preload_symbol *)0 }
   };
   
   void
   preload_static_symbols(void)
   {
       sudo_dso_preload_table(sudo_preload_table);
   }
   
   #endif /* STATIC_SUDOERS_PLUGIN */

Removed from v.1.1  
changed lines
  Added in v.1.1.1.4


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>