[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [xen-unstable] merge with xen-unstable.hg



# HG changeset patch
# User awilliam@xxxxxxxxxxx
# Node ID 3e4fa8b5b245889a89a894faf6f5b8398a8f9907
# Parent  73cdbd909a8d457cbaf8c74682157ad569cacd1b
# Parent  7d4def53936c4c5a8a0a1e82dac42a96aae0d1c1
merge with xen-unstable.hg
---
 
patches/linux-2.6.16.13/x86_64-put-note-sections-into-a-pt_note-segment-in-vmlinux.patch
 |   27 +++++--
 tools/python/xen/web/SrvBase.py                                                
          |    1 
 tools/python/xen/xm/addlabel.py                                                
          |    6 -
 tools/python/xen/xm/cfgbootpolicy.py                                           
          |    6 -
 tools/python/xen/xm/create.py                                                  
          |    4 -
 tools/python/xen/xm/dry-run.py                                                 
          |   13 ++-
 tools/python/xen/xm/dumppolicy.py                                              
          |    8 +-
 tools/python/xen/xm/getlabel.py                                                
          |   38 ++++------
 tools/python/xen/xm/labels.py                                                  
          |    4 -
 tools/python/xen/xm/loadpolicy.py                                              
          |    5 -
 tools/python/xen/xm/makepolicy.py                                              
          |    3 
 tools/python/xen/xm/resources.py                                               
          |   21 +++--
 tools/python/xen/xm/rmlabel.py                                                 
          |   10 +-
 13 files changed, 84 insertions(+), 62 deletions(-)

diff -r 73cdbd909a8d -r 3e4fa8b5b245 
patches/linux-2.6.16.13/x86_64-put-note-sections-into-a-pt_note-segment-in-vmlinux.patch
--- 
a/patches/linux-2.6.16.13/x86_64-put-note-sections-into-a-pt_note-segment-in-vmlinux.patch
  Tue Sep 12 11:42:27 2006 -0600
+++ 
b/patches/linux-2.6.16.13/x86_64-put-note-sections-into-a-pt_note-segment-in-vmlinux.patch
  Tue Sep 12 11:43:22 2006 -0600
@@ -1,5 +1,3 @@ diff --git a/arch/x86_64/kernel/vmlinux.
-diff --git a/arch/x86_64/kernel/vmlinux.lds.S 
b/arch/x86_64/kernel/vmlinux.lds.S
-index 7c4de31..ef418b3 100644
 --- a/arch/x86_64/kernel/vmlinux.lds.S
 +++ b/arch/x86_64/kernel/vmlinux.lds.S
 @@ -13,6 +13,12 @@ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86
@@ -24,7 +22,7 @@ index 7c4de31..ef418b3 100644
                                /* out-of-line lock text */
    .text.lock : AT(ADDR(.text.lock) - LOAD_OFFSET) { *(.text.lock) }
  
-@@ -57,7 +63,7 @@ #endif
+@@ -57,17 +63,10 @@ #endif
    .data : AT(ADDR(.data) - LOAD_OFFSET) {
        *(.data)
        CONSTRUCTORS
@@ -33,7 +31,17 @@ index 7c4de31..ef418b3 100644
  
    _edata = .;                 /* End of data section */
  
-@@ -89,7 +95,7 @@ #define VVIRT_OFFSET (VSYSCALL_ADDR - VS
+-  __bss_start = .;            /* BSS */
+-  .bss : AT(ADDR(.bss) - LOAD_OFFSET) {
+-      *(.bss.page_aligned)    
+-      *(.bss)
+-      }
+-  __bss_stop = .;
+-
+   . = ALIGN(PAGE_SIZE);
+   . = ALIGN(CONFIG_X86_L1_CACHE_BYTES);
+   .data.cacheline_aligned : AT(ADDR(.data.cacheline_aligned) - LOAD_OFFSET) {
+@@ -89,7 +88,7 @@ #define VVIRT_OFFSET (VSYSCALL_ADDR - VS
  #define VVIRT(x) (ADDR(x) - VVIRT_OFFSET)
  
    . = VSYSCALL_ADDR;
@@ -42,7 +50,7 @@ index 7c4de31..ef418b3 100644
    __vsyscall_0 = VSYSCALL_VIRT_ADDR;
  
    . = ALIGN(CONFIG_X86_L1_CACHE_BYTES);
-@@ -132,7 +138,7 @@ #undef VVIRT
+@@ -132,7 +131,7 @@ #undef VVIRT
    . = ALIGN(8192);            /* init_task */
    .data.init_task : AT(ADDR(.data.init_task) - LOAD_OFFSET) {
        *(.data.init_task)
@@ -51,7 +59,22 @@ index 7c4de31..ef418b3 100644
  
    . = ALIGN(4096);
    .data.page_aligned : AT(ADDR(.data.page_aligned) - LOAD_OFFSET) {
-@@ -235,4 +241,6 @@ #endif
+@@ -222,6 +221,14 @@ SECTIONS
+   . = ALIGN(4096);
+   __nosave_end = .;
+ 
++  __bss_start = .;            /* BSS */
++  . = ALIGN(4096);
++  .bss : AT(ADDR(.bss) - LOAD_OFFSET) {
++      *(.bss.page_aligned)
++      *(.bss)
++      }
++  __bss_stop = .;
++
+   _end = . ;
+ 
+   /* Sections to be discarded */
+@@ -235,4 +242,6 @@ #endif
    STABS_DEBUG
  
    DWARF_DEBUG
diff -r 73cdbd909a8d -r 3e4fa8b5b245 tools/python/xen/web/SrvBase.py
--- a/tools/python/xen/web/SrvBase.py   Tue Sep 12 11:42:27 2006 -0600
+++ b/tools/python/xen/web/SrvBase.py   Tue Sep 12 11:43:22 2006 -0600
@@ -84,6 +84,7 @@ class SrvBase(resource.Resource):
             try:
                 return op_method(op, req)
             except Exception, exn:
+                req.setResponseCode(http.INTERNAL_SERVER_ERROR, "Request 
failed: " + op)
                 log.exception("Request %s failed.", op)
                 if req.useSxp():
                     return ['xend.err', str(exn)]
diff -r 73cdbd909a8d -r 3e4fa8b5b245 tools/python/xen/xm/addlabel.py
--- a/tools/python/xen/xm/addlabel.py   Tue Sep 12 11:42:27 2006 -0600
+++ b/tools/python/xen/xm/addlabel.py   Tue Sep 12 11:43:22 2006 -0600
@@ -20,8 +20,6 @@
 """Labeling a domain configuration file or a resoruce.
 """
 import sys, os
-import string
-import traceback
 from xen.util import dictio
 from xen.util import security
 
@@ -33,6 +31,7 @@ def usage():
     print "  resource. It derives the policy from the running hypervisor"
     print "  if it is not given (optional parameter). If a label already"
     print "  exists for the given domain or resource, then addlabel fails.\n"
+    security.err("Usage")
 
 
 def validate_config_file(configfile):
@@ -134,7 +133,6 @@ def main (argv):
                 for prefix in [".", "/etc/xen"]:
                     configfile = prefix + "/" + configfile
                     if os.path.isfile(configfile):
-                        fd = open(configfile, "rb")
                         break
             if not validate_config_file(configfile):
                 usage()
@@ -147,7 +145,7 @@ def main (argv):
             usage()
 
     except security.ACMError:
-        traceback.print_exc(limit=1)
+        sys.exit(-1)
 
 
 if __name__ == '__main__':
diff -r 73cdbd909a8d -r 3e4fa8b5b245 tools/python/xen/xm/cfgbootpolicy.py
--- a/tools/python/xen/xm/cfgbootpolicy.py      Tue Sep 12 11:42:27 2006 -0600
+++ b/tools/python/xen/xm/cfgbootpolicy.py      Tue Sep 12 11:43:22 2006 -0600
@@ -70,7 +70,7 @@ def determine_kernelversion(user_specifi
                 within_xen_title = 0
                 within_xen_entry = 0
     if len(version_list) > 1:
-        err("Cannot decide between entries for kernels: " + version_list)
+        err("Cannot decide between entries for kernels %s" % version_list)
     elif len(version_list) == 0:
         err("Cannot find a boot entry candidate (please create a Xen boot 
entry first).")
     else:
@@ -87,7 +87,6 @@ def insert_policy(boot_file, kernel_vers
     within_xen_entry = 0
     insert_at_end_of_entry = 0
     path_prefix = ''
-    done = False
     (tmp_fd, tmp_grub) = tempfile.mkstemp()
     #follow symlink since menue.lst might be linked to grub.conf
     if stat.S_ISLNK(os.lstat(boot_file)[stat.ST_MODE]):
@@ -175,9 +174,10 @@ def main(argv):
         print "Boot entry created and \'%s\' copied to /boot" % (policy + 
".bin")
 
     except ACMError:
-        pass
+        sys.exit(-1)
     except:
         traceback.print_exc(limit=1)
+        sys.exit(-1)
 
 
 
diff -r 73cdbd909a8d -r 3e4fa8b5b245 tools/python/xen/xm/create.py
--- a/tools/python/xen/xm/create.py     Tue Sep 12 11:42:27 2006 -0600
+++ b/tools/python/xen/xm/create.py     Tue Sep 12 11:43:22 2006 -0600
@@ -1155,7 +1155,7 @@ def create_security_check(config):
         else:
             print "Checking resources: (skipped)"
     except security.ACMError:
-        traceback.print_exc(limit=1)
+        sys.exit(-1)
 
     return passed
 
@@ -1176,7 +1176,7 @@ def main(argv):
         PrettyPrint.prettyprint(config)
     else:
         if not create_security_check(config):
-            print "Security configuration prevents domain from starting"
+            err("Security configuration prevents domain from starting.")
         else:
             dom = make_domain(opts, config)
             if opts.vals.console_autoconnect:
diff -r 73cdbd909a8d -r 3e4fa8b5b245 tools/python/xen/xm/dry-run.py
--- a/tools/python/xen/xm/dry-run.py    Tue Sep 12 11:42:27 2006 -0600
+++ b/tools/python/xen/xm/dry-run.py    Tue Sep 12 11:43:22 2006 -0600
@@ -18,6 +18,7 @@
 
 """Tests the security settings for a domain and its resources.
 """
+import sys
 from xen.util import security
 from xen.xm import create
 from xen.xend import sxp
@@ -28,14 +29,14 @@ def usage():
     print "to see if the domain created by the configfile can access"
     print "the resources.  The status of each resource is listed"
     print "individually along with the final security decision.\n"
+    security.err("Usage")
 
 
 def main (argv):
-    if len(argv) != 2:
-        usage()
-        return
+    try:
+        if len(argv) != 2:
+            usage()
 
-    try:
         passed = 0
         (opts, config) = create.parseCommandLine(argv)
         if create.check_domain_label(config, verbose=1):
@@ -48,8 +49,10 @@ def main (argv):
             print "Dry Run: PASSED"
         else:
             print "Dry Run: FAILED"
+            sys.exit(-1)
+
     except security.ACMError:
-        pass
+        sys.exit(-1)
 
 
 if __name__ == '__main__':
diff -r 73cdbd909a8d -r 3e4fa8b5b245 tools/python/xen/xm/dumppolicy.py
--- a/tools/python/xen/xm/dumppolicy.py Tue Sep 12 11:42:27 2006 -0600
+++ b/tools/python/xen/xm/dumppolicy.py Tue Sep 12 11:43:22 2006 -0600
@@ -18,7 +18,6 @@
 """Display currently enforced policy (low-level hypervisor representation).
 """
 import sys
-import traceback
 from xen.util.security import ACMError, err, dump_policy
 
 
@@ -31,12 +30,13 @@ def usage():
 
 def main(argv):
     try:
+        if len(argv) != 1:
+            usage()
+
         dump_policy()
 
     except ACMError:
-        pass
-    except:
-        traceback.print_exc(limit=1)
+        sys.exit(-1)
 
 
 if __name__ == '__main__':
diff -r 73cdbd909a8d -r 3e4fa8b5b245 tools/python/xen/xm/getlabel.py
--- a/tools/python/xen/xm/getlabel.py   Tue Sep 12 11:42:27 2006 -0600
+++ b/tools/python/xen/xm/getlabel.py   Tue Sep 12 11:43:22 2006 -0600
@@ -19,8 +19,6 @@
 """Show the label for a domain or resoruce.
 """
 import sys, os, re
-import string
-import traceback
 from xen.util import dictio
 from xen.util import security
 
@@ -28,6 +26,7 @@ def usage():
     print "\nUsage: xm getlabel dom <configfile>"
     print "       xm getlabel res <resource>\n"
     print "  This program shows the label for a domain or resource.\n"
+    security.err("Usage")
 
 
 def get_resource_label(resource):
@@ -38,8 +37,7 @@ def get_resource_label(resource):
     try:
         access_control = dictio.dict_read("resources", file)
     except:
-        print "Resource label file not found"
-        return
+        security.err("Resource label file not found")
 
     # get the entry and print label
     if access_control.has_key(resource):
@@ -47,7 +45,7 @@ def get_resource_label(resource):
         label = access_control[resource][1]
         print "policy="+policy+",label="+label
     else:
-        print "Resource not labeled"
+        security.err("Resource not labeled")
 
 
 def get_domain_label(configfile):
@@ -63,8 +61,7 @@ def get_domain_label(configfile):
                 fd = open(file, "rb")
                 break
     if not fd:
-        print "Configuration file '"+configfile+"' not found."
-        return
+        security.err("Configuration file '"+configfile+"' not found.")
 
     # read in the domain config file, finding the label line
     ac_entry_re = re.compile("^access_control\s*=.*", re.IGNORECASE)
@@ -82,8 +79,7 @@ def get_domain_label(configfile):
 
     # send error message if we didn't find anything
     if acline == "":
-        print "Label does not exist in domain configuration file."
-        return
+        security.err("Domain not labeled")
 
     # print out the label
     (title, data) = acline.split("=", 1)
@@ -94,19 +90,21 @@ def get_domain_label(configfile):
 
 
 def main (argv):
-    if len(argv) != 3:
-        usage()
-        return
+    try:
+        if len(argv) != 3:
+            usage()
 
-    if argv[1].lower() == "dom":
-        configfile = argv[2]
-        get_domain_label(configfile)
-    elif argv[1].lower() == "res":
-        resource = argv[2]
-        get_resource_label(resource)
-    else:
-        usage()
+        if argv[1].lower() == "dom":
+            configfile = argv[2]
+            get_domain_label(configfile)
+        elif argv[1].lower() == "res":
+            resource = argv[2]
+            get_resource_label(resource)
+        else:
+            usage()
 
+    except security.ACMError:
+        sys.exit(-1)
 
 if __name__ == '__main__':
     main(sys.argv)
diff -r 73cdbd909a8d -r 3e4fa8b5b245 tools/python/xen/xm/labels.py
--- a/tools/python/xen/xm/labels.py     Tue Sep 12 11:42:27 2006 -0600
+++ b/tools/python/xen/xm/labels.py     Tue Sep 12 11:43:22 2006 -0600
@@ -70,10 +70,12 @@ def main(argv):
         labels.sort()
         for label in labels:
             print label
+
     except ACMError:
-        pass
+        sys.exit(-1)
     except:
         traceback.print_exc(limit=1)
+        sys.exit(-1)
 
 
 if __name__ == '__main__':
diff -r 73cdbd909a8d -r 3e4fa8b5b245 tools/python/xen/xm/loadpolicy.py
--- a/tools/python/xen/xm/loadpolicy.py Tue Sep 12 11:42:27 2006 -0600
+++ b/tools/python/xen/xm/loadpolicy.py Tue Sep 12 11:43:22 2006 -0600
@@ -34,11 +34,12 @@ def main(argv):
         if len(argv) != 2:
             usage()
         load_policy(argv[1])
+
     except ACMError:
-        pass
+        sys.exit(-1)
     except:
         traceback.print_exc(limit=1)
-
+        sys.exit(-1)
 
 
 if __name__ == '__main__':
diff -r 73cdbd909a8d -r 3e4fa8b5b245 tools/python/xen/xm/makepolicy.py
--- a/tools/python/xen/xm/makepolicy.py Tue Sep 12 11:42:27 2006 -0600
+++ b/tools/python/xen/xm/makepolicy.py Tue Sep 12 11:43:22 2006 -0600
@@ -37,9 +37,10 @@ def main(argv):
         make_policy(argv[1])
 
     except ACMError:
-        pass
+        sys.exit(-1)
     except:
         traceback.print_exc(limit=1)
+        sys.exit(-1)
 
 
 
diff -r 73cdbd909a8d -r 3e4fa8b5b245 tools/python/xen/xm/resources.py
--- a/tools/python/xen/xm/resources.py  Tue Sep 12 11:42:27 2006 -0600
+++ b/tools/python/xen/xm/resources.py  Tue Sep 12 11:43:22 2006 -0600
@@ -18,8 +18,7 @@
 
 """List the resource label information from the global resource label file
 """
-import sys, os
-import string
+import sys
 from xen.util import dictio
 from xen.util import security
 
@@ -27,6 +26,7 @@ def usage():
     print "\nUsage: xm resource\n"
     print "  This program lists information for each resource in the"
     print "  global resource label file\n"
+    security.err("Usage")
 
 
 def print_resource_data(access_control):
@@ -41,14 +41,19 @@ def print_resource_data(access_control):
 
 def main (argv):
     try:
-        file = security.res_label_filename
-        access_control = dictio.dict_read("resources", file)
-    except:
-        print "Resource file not found."
-        return
+        if len(argv) != 1:
+            usage()
 
-    print_resource_data(access_control)
+        try:
+            file = security.res_label_filename
+            access_control = dictio.dict_read("resources", file)
+        except:
+            security.err("Error reading resource file.")
 
+        print_resource_data(access_control)
+
+    except security.ACMError:
+        sys.exit(-1)
 
 if __name__ == '__main__':
     main(sys.argv)
diff -r 73cdbd909a8d -r 3e4fa8b5b245 tools/python/xen/xm/rmlabel.py
--- a/tools/python/xen/xm/rmlabel.py    Tue Sep 12 11:42:27 2006 -0600
+++ b/tools/python/xen/xm/rmlabel.py    Tue Sep 12 11:43:22 2006 -0600
@@ -19,8 +19,6 @@
 """Remove a label from a domain configuration file or a resoruce.
 """
 import sys, os, re
-import string
-import traceback
 from xen.util import dictio
 from xen.util import security
 
@@ -31,6 +29,7 @@ def usage():
     print "  for a domain or from the global resource label file for a"
     print "  resource. If the label does not exist for the given domain or"
     print "  resource, then rmlabel fails.\n"
+    security.err("Usage")
 
 
 def rm_resource_label(resource):
@@ -48,7 +47,7 @@ def rm_resource_label(resource):
         del access_control[resource]
         dictio.dict_write(access_control, "resources", file)
     else:
-        security.err("Label does not exist in resource label file.")
+        security.err("Resource not labeled.")
 
 
 def rm_domain_label(configfile):
@@ -85,7 +84,7 @@ def rm_domain_label(configfile):
 
     # send error message if we didn't find anything to remove
     if not removed:
-        security.err("Label does not exist in domain configuration file.")
+        security.err("Domain not labeled.")
 
     # write the data back out to the file
     fd = open(file, "wb")
@@ -97,7 +96,6 @@ def main (argv):
     try:
         if len(argv) != 3:
             usage()
-            return
 
         if argv[1].lower() == "dom":
             configfile = argv[2]
@@ -109,7 +107,7 @@ def main (argv):
             usage()
 
     except security.ACMError:
-        traceback.print_exc(limit=1)
+        sys.exit(-1)
 
 
 if __name__ == '__main__':

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.