r23801: The FSF has moved around a lot. This fixes their Mass Ave address.
[kai/samba.git] / source3 / rpc_server / srv_winreg_nt.c
index 4398d94235b2e42dd2d83581676dbfbe6bbfc9b3..fe3295e7e9e87b1cb54fbb1b04796ebb7261da4b 100644 (file)
@@ -6,7 +6,7 @@
  *
  *  This program is free software; you can redistribute it and/or modify
  *  it under the terms of the GNU General Public License as published by
- *  the Free Software Foundation; either version 2 of the License, or
+ *  the Free Software Foundation; either version 3 of the License, or
  *  (at your option) any later version.
  *  
  *  This program is distributed in the hope that it will be useful,
@@ -15,8 +15,7 @@
  *  GNU General Public License for more details.
  *  
  *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ *  along with this program; if not, see <http://www.gnu.org/licenses/>.
  */
 
 /* Implementation of registry functions. */
@@ -31,7 +30,7 @@ static struct generic_mapping reg_generic_map =
        { REG_KEY_READ, REG_KEY_WRITE, REG_KEY_EXECUTE, REG_KEY_ALL };
 
 /******************************************************************
- free() function for struct regkey_info
+ free() function for struct registry_key
  *****************************************************************/
  
 static void free_regkey(void *ptr)
@@ -90,7 +89,7 @@ static WERROR open_registry_key( pipes_struct *p, POLICY_HND *hnd,
                return WERR_BADFILE; 
        }
        
-       return WERR_OK;;
+       return WERR_OK;
 }
 
 /*******************************************************************
@@ -661,7 +660,12 @@ static WERROR reg_load_tree( REGF_FILE *regfile, const char *topkeypath,
                        topkeypath ));
                return WERR_BADFILE;
        }
-       pstrcpy( registry_key.name, topkeypath );
+
+       registry_key.name = talloc_strdup( regfile->mem_ctx, topkeypath );
+       if ( !registry_key.name ) {
+               DEBUG(0,("reg_load_tree: Talloc failed for reg_key.name!\n"));
+               return WERR_NOMEM;
+       }
        
        /* now start parsing the values and subkeys */