Author: abartlet
Date: 2007-07-03 06:42:31 +0000 (Tue, 03 Jul 2007)
New Revision: 767

WebSVN: 
http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=lorikeet&rev=767

Log:
Putting this function into a seperate file makes life easier for the Samba4 
import.

Andrew Bartlett

Added:
   trunk/heimdal/kdc/set_dbinfo.c
Modified:
   trunk/heimdal/heimdal-lorikeet.diff
   trunk/heimdal/kdc/Makefile.am
   trunk/heimdal/kdc/default_config.c


Changeset:
Modified: trunk/heimdal/heimdal-lorikeet.diff
===================================================================
--- trunk/heimdal/heimdal-lorikeet.diff 2007-06-27 10:02:47 UTC (rev 766)
+++ trunk/heimdal/heimdal-lorikeet.diff 2007-07-03 06:42:31 UTC (rev 767)
@@ -96,3 +96,193 @@
  esym="__i686.get_pc_thunk fc_softc"
  symbols=
  
+Index: kdc/default_config.c
+===================================================================
+--- kdc/default_config.c       (revision 766)
++++ kdc/default_config.c       (working copy)
+@@ -39,68 +39,6 @@
+ RCSID("$Id: default_config.c 21296 2007-06-25 14:49:11Z lha $");
+ 
+ krb5_error_code
+-krb5_kdc_set_dbinfo(krb5_context context, struct krb5_kdc_configuration *c)
+-{
+-    struct hdb_dbinfo *info, *d;
+-    krb5_error_code ret;
+-    int i;
+-
+-    /* fetch the databases */
+-    ret = hdb_get_dbinfo(context, &info);
+-    if (ret)
+-      return ret;
+-    
+-    d = NULL;
+-    while ((d = hdb_dbinfo_get_next(info, d)) != NULL) {
+-      void *ptr;
+-      
+-      ptr = realloc(c->db, (c->num_db + 1) * sizeof(*c->db));
+-      if (ptr == NULL) {
+-          ret = ENOMEM;
+-          krb5_set_error_string(context, "out of memory");
+-          goto out;
+-      }
+-      c->db = ptr;
+-      
+-      ret = hdb_create(context, &c->db[c->num_db], 
+-                       hdb_dbinfo_get_dbname(context, d));
+-      if(ret)
+-          goto out;
+-      
+-      ret = hdb_set_master_keyfile(context, c->db[c->num_db], 
+-                                   hdb_dbinfo_get_mkey_file(context, d));
+-      if (ret)
+-          goto out;
+-      
+-      c->num_db++;
+-
+-      kdc_log(context, c, 0, "label: %s",
+-              hdb_dbinfo_get_label(context, d));
+-      kdc_log(context, c, 0, "\trealm: %s",
+-              hdb_dbinfo_get_realm(context, d));
+-      kdc_log(context, c, 0, "\tdbname: %s",
+-              hdb_dbinfo_get_dbname(context, d));
+-      kdc_log(context, c, 0, "\tmkey_file: %s",
+-              hdb_dbinfo_get_mkey_file(context, d));
+-    }
+-    hdb_free_dbinfo(context, &info);
+-
+-    return 0;
+-out:
+-    for (i = 0; i < c->num_db; i++)
+-      if (c->db[i] && c->db[i]->hdb_destroy)
+-          (*c->db[i]->hdb_destroy)(context, c->db[i]);
+-    c->num_db = 0;
+-    free(c->db);
+-    c->db = NULL;
+- 
+-    hdb_free_dbinfo(context, &info);
+-
+-    return ret;
+-}
+-
+-
+-krb5_error_code
+ krb5_kdc_get_config(krb5_context context, krb5_kdc_configuration **config)
+ {
+     krb5_kdc_configuration *c;
+Index: kdc/set_dbinfo.c
+===================================================================
+--- kdc/set_dbinfo.c   (revision 0)
++++ kdc/set_dbinfo.c   (revision 0)
+@@ -0,0 +1,100 @@
++/*
++ * Copyright (c) 1997-2007 Kungliga Tekniska H�gskolan
++ * (Royal Institute of Technology, Stockholm, Sweden). 
++ *
++ * All rights reserved. 
++ *
++ * Redistribution and use in source and binary forms, with or without 
++ * modification, are permitted provided that the following conditions 
++ * are met: 
++ *
++ * 1. Redistributions of source code must retain the above copyright 
++ *    notice, this list of conditions and the following disclaimer. 
++ *
++ * 2. Redistributions in binary form must reproduce the above copyright 
++ *    notice, this list of conditions and the following disclaimer in the 
++ *    documentation and/or other materials provided with the distribution. 
++ *
++ * 3. Neither the name of the Institute nor the names of its contributors 
++ *    may be used to endorse or promote products derived from this software 
++ *    without specific prior written permission. 
++ *
++ * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
++ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
++ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
++ * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
++ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
++ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
++ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
++ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
++ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
++ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
++ * SUCH DAMAGE. 
++ */
++
++#include "kdc_locl.h"
++
++RCSID("$Id: default_config.c 21296 2007-06-25 14:49:11Z lha $");
++
++krb5_error_code
++krb5_kdc_set_dbinfo(krb5_context context, struct krb5_kdc_configuration *c)
++{
++    struct hdb_dbinfo *info, *d;
++    krb5_error_code ret;
++    int i;
++
++    /* fetch the databases */
++    ret = hdb_get_dbinfo(context, &info);
++    if (ret)
++      return ret;
++    
++    d = NULL;
++    while ((d = hdb_dbinfo_get_next(info, d)) != NULL) {
++      void *ptr;
++      
++      ptr = realloc(c->db, (c->num_db + 1) * sizeof(*c->db));
++      if (ptr == NULL) {
++          ret = ENOMEM;
++          krb5_set_error_string(context, "out of memory");
++          goto out;
++      }
++      c->db = ptr;
++      
++      ret = hdb_create(context, &c->db[c->num_db], 
++                       hdb_dbinfo_get_dbname(context, d));
++      if(ret)
++          goto out;
++      
++      ret = hdb_set_master_keyfile(context, c->db[c->num_db], 
++                                   hdb_dbinfo_get_mkey_file(context, d));
++      if (ret)
++          goto out;
++      
++      c->num_db++;
++
++      kdc_log(context, c, 0, "label: %s",
++              hdb_dbinfo_get_label(context, d));
++      kdc_log(context, c, 0, "\trealm: %s",
++              hdb_dbinfo_get_realm(context, d));
++      kdc_log(context, c, 0, "\tdbname: %s",
++              hdb_dbinfo_get_dbname(context, d));
++      kdc_log(context, c, 0, "\tmkey_file: %s",
++              hdb_dbinfo_get_mkey_file(context, d));
++    }
++    hdb_free_dbinfo(context, &info);
++
++    return 0;
++out:
++    for (i = 0; i < c->num_db; i++)
++      if (c->db[i] && c->db[i]->hdb_destroy)
++          (*c->db[i]->hdb_destroy)(context, c->db[i]);
++    c->num_db = 0;
++    free(c->db);
++    c->db = NULL;
++ 
++    hdb_free_dbinfo(context, &info);
++
++    return ret;
++}
++
++
+Index: kdc/Makefile.am
+===================================================================
+--- kdc/Makefile.am    (revision 766)
++++ kdc/Makefile.am    (working copy)
+@@ -31,6 +31,7 @@
+       kdc-private.h           \
+       kdc-protos.h            \
+       default_config.c        \
++      set_dbinfo.c            \
+       digest.c                \
+       kdc_locl.h              \
+       kerberos5.c             \

Modified: trunk/heimdal/kdc/Makefile.am
===================================================================
--- trunk/heimdal/kdc/Makefile.am       2007-06-27 10:02:47 UTC (rev 766)
+++ trunk/heimdal/kdc/Makefile.am       2007-07-03 06:42:31 UTC (rev 767)
@@ -31,6 +31,7 @@
        kdc-private.h           \
        kdc-protos.h            \
        default_config.c        \
+       set_dbinfo.c            \
        digest.c                \
        kdc_locl.h              \
        kerberos5.c             \

Modified: trunk/heimdal/kdc/default_config.c
===================================================================
--- trunk/heimdal/kdc/default_config.c  2007-06-27 10:02:47 UTC (rev 766)
+++ trunk/heimdal/kdc/default_config.c  2007-07-03 06:42:31 UTC (rev 767)
@@ -39,68 +39,6 @@
 RCSID("$Id: default_config.c 21296 2007-06-25 14:49:11Z lha $");
 
 krb5_error_code
-krb5_kdc_set_dbinfo(krb5_context context, struct krb5_kdc_configuration *c)
-{
-    struct hdb_dbinfo *info, *d;
-    krb5_error_code ret;
-    int i;
-
-    /* fetch the databases */
-    ret = hdb_get_dbinfo(context, &info);
-    if (ret)
-       return ret;
-    
-    d = NULL;
-    while ((d = hdb_dbinfo_get_next(info, d)) != NULL) {
-       void *ptr;
-       
-       ptr = realloc(c->db, (c->num_db + 1) * sizeof(*c->db));
-       if (ptr == NULL) {
-           ret = ENOMEM;
-           krb5_set_error_string(context, "out of memory");
-           goto out;
-       }
-       c->db = ptr;
-       
-       ret = hdb_create(context, &c->db[c->num_db], 
-                        hdb_dbinfo_get_dbname(context, d));
-       if(ret)
-           goto out;
-       
-       ret = hdb_set_master_keyfile(context, c->db[c->num_db], 
-                                    hdb_dbinfo_get_mkey_file(context, d));
-       if (ret)
-           goto out;
-       
-       c->num_db++;
-
-       kdc_log(context, c, 0, "label: %s",
-               hdb_dbinfo_get_label(context, d));
-       kdc_log(context, c, 0, "\trealm: %s",
-               hdb_dbinfo_get_realm(context, d));
-       kdc_log(context, c, 0, "\tdbname: %s",
-               hdb_dbinfo_get_dbname(context, d));
-       kdc_log(context, c, 0, "\tmkey_file: %s",
-               hdb_dbinfo_get_mkey_file(context, d));
-    }
-    hdb_free_dbinfo(context, &info);
-
-    return 0;
-out:
-    for (i = 0; i < c->num_db; i++)
-       if (c->db[i] && c->db[i]->hdb_destroy)
-           (*c->db[i]->hdb_destroy)(context, c->db[i]);
-    c->num_db = 0;
-    free(c->db);
-    c->db = NULL;
- 
-    hdb_free_dbinfo(context, &info);
-
-    return ret;
-}
-
-
-krb5_error_code
 krb5_kdc_get_config(krb5_context context, krb5_kdc_configuration **config)
 {
     krb5_kdc_configuration *c;

Added: trunk/heimdal/kdc/set_dbinfo.c
===================================================================
--- trunk/heimdal/kdc/set_dbinfo.c      2007-06-27 10:02:47 UTC (rev 766)
+++ trunk/heimdal/kdc/set_dbinfo.c      2007-07-03 06:42:31 UTC (rev 767)
@@ -0,0 +1,100 @@
+/*
+ * Copyright (c) 1997-2007 Kungliga Tekniska H�gskolan
+ * (Royal Institute of Technology, Stockholm, Sweden). 
+ *
+ * All rights reserved. 
+ *
+ * Redistribution and use in source and binary forms, with or without 
+ * modification, are permitted provided that the following conditions 
+ * are met: 
+ *
+ * 1. Redistributions of source code must retain the above copyright 
+ *    notice, this list of conditions and the following disclaimer. 
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright 
+ *    notice, this list of conditions and the following disclaimer in the 
+ *    documentation and/or other materials provided with the distribution. 
+ *
+ * 3. Neither the name of the Institute nor the names of its contributors 
+ *    may be used to endorse or promote products derived from this software 
+ *    without specific prior written permission. 
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
+ * SUCH DAMAGE. 
+ */
+
+#include "kdc_locl.h"
+
+RCSID("$Id: default_config.c 21296 2007-06-25 14:49:11Z lha $");
+
+krb5_error_code
+krb5_kdc_set_dbinfo(krb5_context context, struct krb5_kdc_configuration *c)
+{
+    struct hdb_dbinfo *info, *d;
+    krb5_error_code ret;
+    int i;
+
+    /* fetch the databases */
+    ret = hdb_get_dbinfo(context, &info);
+    if (ret)
+       return ret;
+    
+    d = NULL;
+    while ((d = hdb_dbinfo_get_next(info, d)) != NULL) {
+       void *ptr;
+       
+       ptr = realloc(c->db, (c->num_db + 1) * sizeof(*c->db));
+       if (ptr == NULL) {
+           ret = ENOMEM;
+           krb5_set_error_string(context, "out of memory");
+           goto out;
+       }
+       c->db = ptr;
+       
+       ret = hdb_create(context, &c->db[c->num_db], 
+                        hdb_dbinfo_get_dbname(context, d));
+       if(ret)
+           goto out;
+       
+       ret = hdb_set_master_keyfile(context, c->db[c->num_db], 
+                                    hdb_dbinfo_get_mkey_file(context, d));
+       if (ret)
+           goto out;
+       
+       c->num_db++;
+
+       kdc_log(context, c, 0, "label: %s",
+               hdb_dbinfo_get_label(context, d));
+       kdc_log(context, c, 0, "\trealm: %s",
+               hdb_dbinfo_get_realm(context, d));
+       kdc_log(context, c, 0, "\tdbname: %s",
+               hdb_dbinfo_get_dbname(context, d));
+       kdc_log(context, c, 0, "\tmkey_file: %s",
+               hdb_dbinfo_get_mkey_file(context, d));
+    }
+    hdb_free_dbinfo(context, &info);
+
+    return 0;
+out:
+    for (i = 0; i < c->num_db; i++)
+       if (c->db[i] && c->db[i]->hdb_destroy)
+           (*c->db[i]->hdb_destroy)(context, c->db[i]);
+    c->num_db = 0;
+    free(c->db);
+    c->db = NULL;
+ 
+    hdb_free_dbinfo(context, &info);
+
+    return ret;
+}
+
+

Reply via email to