[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] New qemu-based ioemu for fully virtualised guests.
ChangeSet 1.1476, 2005/05/19 23:05:02+01:00, kaf24@xxxxxxxxxxxxxxxxxxxx New qemu-based ioemu for fully virtualised guests. Signed-off-by: Arun Sharma <arun.sharma@xxxxxxxxx> Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx> b/tools/Makefile | 20 b/tools/ioemu/COPYING | 339 + b/tools/ioemu/COPYING.LIB | 504 ++ b/tools/ioemu/Changelog | 295 + b/tools/ioemu/Makefile | 147 b/tools/ioemu/Makefile.target | 392 + b/tools/ioemu/README | 61 b/tools/ioemu/README.distrib | 16 b/tools/ioemu/TODO | 66 b/tools/ioemu/VERSION | 1 b/tools/ioemu/block-cloop.c | 167 b/tools/ioemu/block-cow.c | 263 + b/tools/ioemu/block-qcow.c | 677 +++ b/tools/ioemu/block-vmdk.c | 279 + b/tools/ioemu/block.c | 548 ++ b/tools/ioemu/block_int.h | 77 b/tools/ioemu/bswap.h | 202 b/tools/ioemu/configure | 585 ++ b/tools/ioemu/console.c | 731 +++ b/tools/ioemu/cpu-all.h | 688 +++ b/tools/ioemu/cpu-defs.h | 95 b/tools/ioemu/cpu.h | 69 b/tools/ioemu/create_keysym_header.sh | 77 b/tools/ioemu/exec-all.h | 579 ++ b/tools/ioemu/exec.c | 461 ++ b/tools/ioemu/hw/adb.c | 386 + b/tools/ioemu/hw/adlib.c | 313 + b/tools/ioemu/hw/cirrus_vga.c | 3115 +++++++++++++++ b/tools/ioemu/hw/cirrus_vga_rop.h | 78 b/tools/ioemu/hw/cirrus_vga_rop2.h | 260 + b/tools/ioemu/hw/cuda.c | 614 +++ b/tools/ioemu/hw/dma.c | 535 ++ b/tools/ioemu/hw/fdc.c | 1719 ++++++++ b/tools/ioemu/hw/fmopl.c | 1390 ++++++ b/tools/ioemu/hw/fmopl.h | 174 b/tools/ioemu/hw/i8254.c | 505 ++ b/tools/ioemu/hw/i8259.c | 528 ++ b/tools/ioemu/hw/ide.c | 2318 +++++++++++ b/tools/ioemu/hw/iommu.c | 218 + b/tools/ioemu/hw/lance.c | 468 ++ b/tools/ioemu/hw/m48t08.c | 391 + b/tools/ioemu/hw/m48t08.h | 12 b/tools/ioemu/hw/m48t59.c | 602 ++ b/tools/ioemu/hw/m48t59.h | 13 b/tools/ioemu/hw/magic-load.c | 326 + b/tools/ioemu/hw/mc146818rtc.c | 463 ++ b/tools/ioemu/hw/ne2000.c | 684 +++ b/tools/ioemu/hw/openpic.c | 1023 +++++ b/tools/ioemu/hw/pc.c | 575 ++ b/tools/ioemu/hw/pci.c | 1524 +++++++ b/tools/ioemu/hw/pckbd.c | 919 ++++ b/tools/ioemu/hw/ppc.c | 462 ++ b/tools/ioemu/hw/ppc_chrp.c | 233 + b/tools/ioemu/hw/ppc_prep.c | 548 ++ b/tools/ioemu/hw/sb16.c | 1268 ++++++ b/tools/ioemu/hw/sched.c | 268 + b/tools/ioemu/hw/serial.c | 279 + b/tools/ioemu/hw/sun4m.c | 113 b/tools/ioemu/hw/tcx.c | 207 + b/tools/ioemu/hw/timer.c | 97 b/tools/ioemu/hw/vga.c | 2059 ++++++++++ b/tools/ioemu/hw/vga_int.h | 168 b/tools/ioemu/hw/vga_template.h | 519 ++ b/tools/ioemu/i386-vl.ld | 140 b/tools/ioemu/i386.ld | 140 b/tools/ioemu/keyboard_rdesktop.c | 165 b/tools/ioemu/keymaps/ar | 98 b/tools/ioemu/keymaps/common | 157 b/tools/ioemu/keymaps/convert-map | 63 b/tools/ioemu/keymaps/da | 120 b/tools/ioemu/keymaps/de | 114 b/tools/ioemu/keymaps/de-ch | 169 b/tools/ioemu/keymaps/en-gb | 119 b/tools/ioemu/keymaps/en-us | 35 b/tools/ioemu/keymaps/es | 105 b/tools/ioemu/keymaps/et | 86 b/tools/ioemu/keymaps/fi | 124 b/tools/ioemu/keymaps/fo | 77 b/tools/ioemu/keymaps/fr | 181 b/tools/ioemu/keymaps/fr-be | 140 b/tools/ioemu/keymaps/fr-ca | 50 b/tools/ioemu/keymaps/fr-ch | 114 b/tools/ioemu/keymaps/hr | 125 b/tools/ioemu/keymaps/hu | 115 b/tools/ioemu/keymaps/is | 140 b/tools/ioemu/keymaps/it | 115 b/tools/ioemu/keymaps/ja | 104 b/tools/ioemu/keymaps/lt | 57 b/tools/ioemu/keymaps/lv | 128 b/tools/ioemu/keymaps/mk | 101 b/tools/ioemu/keymaps/modifiers | 17 b/tools/ioemu/keymaps/nl | 60 b/tools/ioemu/keymaps/nl-be | 3 b/tools/ioemu/keymaps/no | 119 b/tools/ioemu/keymaps/pl | 122 b/tools/ioemu/keymaps/pt | 113 b/tools/ioemu/keymaps/pt-br | 69 b/tools/ioemu/keymaps/ru | 109 b/tools/ioemu/keymaps/sl | 110 b/tools/ioemu/keymaps/sv | 82 b/tools/ioemu/keymaps/th | 131 b/tools/ioemu/keymaps/tr | 123 b/tools/ioemu/main.c | 250 + b/tools/ioemu/monitor.c | 282 + b/tools/ioemu/osdep.c | 499 ++ b/tools/ioemu/osdep.h | 50 b/tools/ioemu/path.c | 147 b/tools/ioemu/pc-bios/Makefile | 24 b/tools/ioemu/pc-bios/README | 13 b/tools/ioemu/pc-bios/bios.bin |binary b/tools/ioemu/pc-bios/bios.diff | 108 b/tools/ioemu/pc-bios/linux_boot.S | 29 b/tools/ioemu/pc-bios/linux_boot.bin |binary b/tools/ioemu/pc-bios/ppc_rom.bin |binary b/tools/ioemu/pc-bios/proll.bin |binary b/tools/ioemu/pc-bios/proll.patch | 36 b/tools/ioemu/pc-bios/vgabios-cirrus.bin |binary b/tools/ioemu/pc-bios/vgabios.bin |binary b/tools/ioemu/qemu-binfmt-conf.sh | 34 b/tools/ioemu/qemu-doc.html | 1793 ++++++++ b/tools/ioemu/qemu-doc.texi | 1296 ++++++ b/tools/ioemu/qemu-img.c | 698 +++ b/tools/ioemu/qemu-mkcow.1 | 105 b/tools/ioemu/qemu-tech.html | 1303 ++++++ b/tools/ioemu/qemu-tech.texi | 494 ++ b/tools/ioemu/qemu.1 | 457 ++ b/tools/ioemu/readline.c | 424 ++ b/tools/ioemu/sdl.c | 605 ++ b/tools/ioemu/target-i386-dm/device-model | 69 b/tools/ioemu/target-i386-dm/helper2.c | 434 ++ b/tools/ioemu/target-i386-dm/qemu-ifup | 10 b/tools/ioemu/target-i386-dm/qemu-vgaram-bin.gz |binary b/tools/ioemu/tests/Makefile | 84 b/tools/ioemu/tests/hello-arm.c | 113 b/tools/ioemu/tests/hello-i386.c | 26 b/tools/ioemu/tests/linux-test.c | 536 ++ b/tools/ioemu/tests/pi_10.com |binary b/tools/ioemu/tests/qruncom.c | 308 + b/tools/ioemu/tests/runcom.c | 195 b/tools/ioemu/tests/sha1.c | 242 + b/tools/ioemu/tests/test-i386-code16.S | 97 b/tools/ioemu/tests/test-i386-muldiv.h | 56 b/tools/ioemu/tests/test-i386-shift.h | 143 b/tools/ioemu/tests/test-i386-vm86.S | 104 b/tools/ioemu/tests/test-i386.c | 1706 ++++++++ b/tools/ioemu/tests/test-i386.h | 131 b/tools/ioemu/tests/test_path.c | 152 b/tools/ioemu/tests/testthread.c | 51 b/tools/ioemu/texi2pod.pl | 428 ++ b/tools/ioemu/thunk.c | 243 + b/tools/ioemu/thunk.h | 158 b/tools/ioemu/vgafont.h | 4611 ++++++++++++++++++++++ b/tools/ioemu/vl.c | 2978 ++++++++++++++ b/tools/ioemu/vl.h | 786 +++ b/tools/ioemu/vnc.c | 501 ++ tools/ioemu/font/vga.bitmap.h | 288 - tools/ioemu/gui/Makefile | 12 tools/ioemu/gui/Makefile.in | 561 -- tools/ioemu/gui/bitmaps/cdromd.h | 34 tools/ioemu/gui/bitmaps/cdromd.xpm | 41 tools/ioemu/gui/bitmaps/configbutton.h | 16 tools/ioemu/gui/bitmaps/configbutton.xpm | 41 tools/ioemu/gui/bitmaps/copy.h | 18 tools/ioemu/gui/bitmaps/copy.xpm | 41 tools/ioemu/gui/bitmaps/floppya.h | 34 tools/ioemu/gui/bitmaps/floppya.xpm | 41 tools/ioemu/gui/bitmaps/floppyb.h | 34 tools/ioemu/gui/bitmaps/floppyb.xpm | 41 tools/ioemu/gui/bitmaps/mouse.h | 34 tools/ioemu/gui/bitmaps/mouse.xpm | 41 tools/ioemu/gui/bitmaps/paste.h | 18 tools/ioemu/gui/bitmaps/paste.xpm | 41 tools/ioemu/gui/bitmaps/power.h | 20 tools/ioemu/gui/bitmaps/power.xpm | 41 tools/ioemu/gui/bitmaps/reset.h | 20 tools/ioemu/gui/bitmaps/reset.xpm | 41 tools/ioemu/gui/bitmaps/snapshot.h | 20 tools/ioemu/gui/bitmaps/snapshot.xpm | 41 tools/ioemu/gui/bitmaps/userbutton.h | 19 tools/ioemu/gui/bitmaps/userbutton.xpm | 40 tools/ioemu/gui/gui.cc | 601 -- tools/ioemu/gui/gui.h | 352 - tools/ioemu/gui/icon_bochs.h | 40 tools/ioemu/gui/icon_bochs.xpm | 45 tools/ioemu/gui/keymap.cc | 330 - tools/ioemu/gui/keymap.h | 77 tools/ioemu/gui/keymaps/convertmap.pl | 14 tools/ioemu/gui/keymaps/sdl-pc-de.map | 222 - tools/ioemu/gui/keymaps/sdl-pc-us.map | 211 - tools/ioemu/gui/keymaps/x11-pc-be.map | 220 - tools/ioemu/gui/keymaps/x11-pc-da.map | 247 - tools/ioemu/gui/keymaps/x11-pc-de.map | 247 - tools/ioemu/gui/keymaps/x11-pc-es.map | 217 - tools/ioemu/gui/keymaps/x11-pc-fr.map | 218 - tools/ioemu/gui/keymaps/x11-pc-it.map | 207 - tools/ioemu/gui/keymaps/x11-pc-se.map | 278 - tools/ioemu/gui/keymaps/x11-pc-uk.map | 209 - tools/ioemu/gui/keymaps/x11-pc-us.map | 205 - tools/ioemu/gui/nogui.cc | 336 - tools/ioemu/gui/rfb.cc | 1508 ------- tools/ioemu/gui/rfb.h | 35 tools/ioemu/gui/rfbproto.h | 675 --- tools/ioemu/gui/sdl.h | 1038 ----- tools/ioemu/gui/sdlkeys.h | 257 - tools/ioemu/gui/siminterface.cc | 1411 ------ tools/ioemu/gui/siminterface.h | 1460 ------- tools/ioemu/gui/svga.cc | 514 -- tools/ioemu/gui/term.cc | 843 ---- tools/ioemu/gui/textconfig.cc | 995 ---- tools/ioemu/gui/textconfig.h | 19 tools/ioemu/gui/x.cc | 1848 --------- tools/ioemu/include/bochs.h | 771 --- tools/ioemu/include/bxversion.h | 7 tools/ioemu/include/config.h | 919 ---- tools/ioemu/include/cpu/cpu.h | 116 tools/ioemu/include/extplugin.h | 51 tools/ioemu/include/instrument.h | 256 - tools/ioemu/include/ltdl.h | 398 - tools/ioemu/include/ltdlconf.h | 161 tools/ioemu/include/osdep.h | 176 tools/ioemu/include/pc_system.h | 226 - tools/ioemu/include/plugin.h | 323 - tools/ioemu/include/state_file.h | 61 tools/ioemu/iodev/Makefile | 23 tools/ioemu/iodev/aspi-win32.h | 210 - tools/ioemu/iodev/biosdev.cc | 212 - tools/ioemu/iodev/biosdev.h | 63 tools/ioemu/iodev/cdrom.cc | 1338 ------ tools/ioemu/iodev/cdrom.h | 67 tools/ioemu/iodev/cdrom_beos.h | 10 tools/ioemu/iodev/cmos.cc | 824 ---- tools/ioemu/iodev/cmos.h | 90 tools/ioemu/iodev/cpu.cc | 358 - tools/ioemu/iodev/crc32.cc | 49 tools/ioemu/iodev/crc32.h | 25 tools/ioemu/iodev/devices.cc | 685 --- tools/ioemu/iodev/dma.cc | 825 ---- tools/ioemu/iodev/dma.h | 114 tools/ioemu/iodev/eth.cc | 194 tools/ioemu/iodev/eth.h | 76 tools/ioemu/iodev/eth_arpback.cc | 214 - tools/ioemu/iodev/eth_fbsd.cc | 385 - tools/ioemu/iodev/eth_linux.cc | 286 - tools/ioemu/iodev/eth_null.cc | 164 tools/ioemu/iodev/eth_packetmaker.cc | 184 tools/ioemu/iodev/eth_packetmaker.h | 135 tools/ioemu/iodev/eth_tap.cc | 370 - tools/ioemu/iodev/eth_tuntap.cc | 401 - tools/ioemu/iodev/extfpuirq.cc | 107 tools/ioemu/iodev/extfpuirq.h | 51 tools/ioemu/iodev/floppy.cc | 1633 -------- tools/ioemu/iodev/floppy.h | 138 tools/ioemu/iodev/gameport.cc | 242 - tools/ioemu/iodev/gameport.h | 63 tools/ioemu/iodev/guest2host.h | 77 tools/ioemu/iodev/harddrv.cc | 4880 ------------------------ tools/ioemu/iodev/harddrv.h | 765 --- tools/ioemu/iodev/ioapic.cc | 175 tools/ioemu/iodev/ioapic.h | 54 tools/ioemu/iodev/iodebug.cc | 354 - tools/ioemu/iodev/iodebug.h | 35 tools/ioemu/iodev/iodev.h | 422 -- tools/ioemu/iodev/keyboard.cc | 1611 ------- tools/ioemu/iodev/keyboard.h | 234 - tools/ioemu/iodev/load32bitOShack.cc | 322 - tools/ioemu/iodev/logio.cc | 631 --- tools/ioemu/iodev/main.cc | 4071 -------------------- tools/ioemu/iodev/ne2k.cc | 1608 ------- tools/ioemu/iodev/ne2k.h | 239 - tools/ioemu/iodev/osdep.cc | 340 - tools/ioemu/iodev/parallel.cc | 300 - tools/ioemu/iodev/parallel.h | 78 tools/ioemu/iodev/pc_system.cc | 570 -- tools/ioemu/iodev/pci.cc | 467 -- tools/ioemu/iodev/pci.h | 90 tools/ioemu/iodev/pci2isa.cc | 294 - tools/ioemu/iodev/pci2isa.h | 63 tools/ioemu/iodev/pciusb.cc | 668 --- tools/ioemu/iodev/pciusb.h | 195 tools/ioemu/iodev/pcivga.cc | 248 - tools/ioemu/iodev/pcivga.h | 48 tools/ioemu/iodev/pic.cc | 887 ---- tools/ioemu/iodev/pic.h | 97 tools/ioemu/iodev/pit.cc | 856 ---- tools/ioemu/iodev/pit.h | 103 tools/ioemu/iodev/pit82c54.cc | 930 ---- tools/ioemu/iodev/pit82c54.h | 143 tools/ioemu/iodev/pit_wrap.cc | 444 -- tools/ioemu/iodev/pit_wrap.h | 104 tools/ioemu/iodev/plugin.cc | 554 -- tools/ioemu/iodev/scancodes.cc | 770 --- tools/ioemu/iodev/scancodes.h | 31 tools/ioemu/iodev/scsi_commands.h | 418 -- tools/ioemu/iodev/scsidefs.h | 286 - tools/ioemu/iodev/scsipt.h | 144 tools/ioemu/iodev/serial.cc | 1001 ---- tools/ioemu/iodev/serial.h | 193 tools/ioemu/iodev/serial_raw.h | 23 tools/ioemu/iodev/slowdown_timer.cc | 182 tools/ioemu/iodev/slowdown_timer.h | 33 tools/ioemu/iodev/soundlnx.cc | 227 - tools/ioemu/iodev/soundlnx.h | 69 tools/ioemu/iodev/soundwin.cc | 521 -- tools/ioemu/iodev/soundwin.h | 229 - tools/ioemu/iodev/state_file.cc | 136 tools/ioemu/iodev/unmapped.cc | 305 - tools/ioemu/iodev/unmapped.h | 64 tools/ioemu/iodev/vga.cc | 3116 --------------- tools/ioemu/iodev/vga.h | 300 - tools/ioemu/iodev/virt_timer.cc | 552 -- tools/ioemu/iodev/virt_timer.h | 131 tools/ioemu/memory/Makefile | 12 tools/ioemu/memory/memory.cc | 450 -- tools/ioemu/memory/memory.h | 104 tools/ioemu/memory/misc_mem.cc | 440 -- tools/ioemu/mk/helix.mk | 6 316 files changed, 59640 insertions(+), 62180 deletions(-) diff -Nru a/tools/Makefile b/tools/Makefile --- a/tools/Makefile 2005-05-19 19:06:43 -04:00 +++ b/tools/Makefile 2005-05-19 19:06:43 -04:00 @@ -10,30 +10,36 @@ SUBDIRS += python SUBDIRS += xfrd SUBDIRS += xcs -ifndef XEN_NO_IOEMU -SUBDIRS += ioemu -endif SUBDIRS += pygrub -.PHONY: all install clean check check_clean +.PHONY: all install clean check check_clean ioemu eioemuinstall ioemuclean + +ifndef XEN_NO_IOEMU +ioemu ioemuinstall ioemuclean: + [ -f ioemu/config-host.h ] || \ + (cd ioemu; ./configure --prefix=$(DESTDIR)/usr) + $(MAKE) -C ioemu $(patsubst ioemu%,%,$@) +else +ioemu ioemuinstall ioemuclean: +endif all: check @set -e; for subdir in $(SUBDIRS); do \ - if [ -f $$subdir/configure ]; then \ - (cd $$subdir; ./configure --prefix=$(DESTDIR)/usr) \ - fi; \ $(MAKE) -C $$subdir $@; \ done + $(MAKE) ioemu install: check @set -e; for subdir in $(SUBDIRS); do \ $(MAKE) -C $$subdir $@; \ done + $(MAKE) ioemuinstall clean: check_clean @set -e; for subdir in $(SUBDIRS); do \ $(MAKE) -C $$subdir $@; \ done + $(MAKE) ioemuclean check: $(MAKE) -C check diff -Nru a/tools/ioemu/COPYING b/tools/ioemu/COPYING --- /dev/null Wed Dec 31 16:00:00 196900 +++ b/tools/ioemu/COPYING 2005-05-19 19:06:46 -04:00 @@ -0,0 +1,339 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 675 Mass Ave, Cambridge, MA 02139, USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |