├── .gitignore ├── .kernel.metadata ├── DESCRIPTION ├── Makefile ├── OWNER ├── bootstrap.sh ├── graphs └── default │ └── kernel.xml ├── manifest ├── nodes ├── kernel-extra.xml ├── kernel-server.xml └── kernel.xml ├── src ├── Makefile ├── anaconda-rocks-dracut │ ├── Makefile │ ├── README │ ├── fetchRocksKS.py │ ├── lighttpd.service │ ├── module-setup.sh │ ├── peer-done.sh │ ├── rockspart.service │ ├── rockspart.sh │ ├── start-lighttpd-systemd.sh │ ├── start-lighttpd.sh │ ├── stop-lighttpd.sh │ └── version.mk ├── anaconda-rocks │ ├── Makefile │ ├── product │ │ └── run │ │ │ └── install │ │ │ ├── product │ │ │ └── pyanaconda │ │ │ │ ├── anaconda_rocks.py │ │ │ │ ├── do_partition.py │ │ │ │ ├── gui.py │ │ │ │ ├── installclasses │ │ │ │ └── centosRocks.py │ │ │ │ ├── record_partitions.py │ │ │ │ ├── rocks_getrolls.py │ │ │ │ ├── rocks_partition.py │ │ │ │ ├── welcome_gui.py │ │ │ │ └── yuminstall.py │ │ │ └── updates │ │ │ └── rocks_getrolls.py │ ├── updates │ │ ├── opt │ │ │ └── rocks │ │ │ │ ├── bin │ │ │ │ └── builddb.sh │ │ │ │ └── lib │ │ │ │ └── python2.7 │ │ │ │ └── site-packages │ │ │ │ └── rocks │ │ │ │ └── installcgi.py │ │ ├── org_rocks_rolls │ │ │ ├── RocksEnv.py │ │ │ ├── __init__.py │ │ │ ├── categories │ │ │ │ ├── RocksRolls.py │ │ │ │ └── __init__.py │ │ │ ├── gui │ │ │ │ ├── __init__.py │ │ │ │ └── spokes │ │ │ │ │ ├── RocksInfo2.glade │ │ │ │ │ ├── RocksPrivateIface.glade │ │ │ │ │ ├── RocksRolls.glade │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── infoVars.json │ │ │ │ │ ├── rocks_info.py │ │ │ │ │ ├── rocks_private.py │ │ │ │ │ ├── rocks_rolls.glade │ │ │ │ │ └── rocks_rolls.py │ │ │ └── ks │ │ │ │ ├── __init__.py │ │ │ │ └── rocksrolls.py │ │ └── usr │ │ │ └── lib64 │ │ │ └── python2.7 │ │ │ └── site-packages │ │ │ └── pyanaconda │ │ │ ├── ui │ │ │ └── gui │ │ │ │ └── spokes │ │ │ │ ├── software.py │ │ │ │ └── source.py │ │ │ └── vnc.py │ └── version.mk ├── fastcgi │ ├── Makefile │ ├── patch-files │ │ └── fcgi-2.4.0 │ │ │ └── include │ │ │ └── fcgio.h │ └── version.mk ├── foundation-pysqlite │ ├── Makefile │ ├── pysqlite.mk │ ├── setup.cfg │ └── version.mk ├── kernel.org │ ├── Makefile │ ├── config-2.6.24.4 │ ├── config-PAE-2.6.24.4 │ ├── config-xen-2.6.24.4 │ ├── kernel.spec.in │ └── version.mk ├── keyutils │ ├── Makefile │ ├── build │ └── version.mk ├── lighttpd │ ├── Makefile │ ├── conf │ │ └── lighttpd.conf │ └── version.mk ├── opt-atk │ ├── Makefile │ └── version.mk ├── opt-devel-module │ ├── Makefile │ ├── opt-devel.in │ └── version.mk ├── opt-glade │ ├── Makefile │ └── version.mk ├── opt-glib2 │ ├── Makefile │ └── version.mk ├── opt-gtk+ │ ├── Makefile │ └── version.mk ├── rocks-boot-7 │ ├── Makefile │ ├── README │ ├── patch-files │ │ └── usr │ │ │ └── share │ │ │ └── lorax │ │ │ ├── runtime-cleanup.tmpl │ │ │ ├── runtime-install.tmpl │ │ │ └── runtime-postinstall.tmpl │ └── version.mk ├── rocks-boot-pxe │ ├── Makefile │ └── version.mk ├── rocks-boot │ ├── Makefile │ ├── README │ ├── cluster-kickstart.c │ ├── enterprise │ │ ├── 5 │ │ │ ├── images │ │ │ │ ├── Boot.mk │ │ │ │ ├── drivers │ │ │ │ │ ├── Build.rules │ │ │ │ │ ├── COPYING │ │ │ │ │ ├── ChangeLog │ │ │ │ │ ├── INSTALL │ │ │ │ │ ├── Makefile │ │ │ │ │ ├── README │ │ │ │ │ ├── TODO │ │ │ │ │ ├── ata_piix │ │ │ │ │ │ ├── Makefile │ │ │ │ │ │ ├── Makefile.build │ │ │ │ │ │ ├── ata_piix.c │ │ │ │ │ │ ├── libata-bmdma.c │ │ │ │ │ │ ├── libata-core.c │ │ │ │ │ │ ├── libata-eh.c │ │ │ │ │ │ ├── libata-scsi.c │ │ │ │ │ │ ├── libata.h │ │ │ │ │ │ ├── modinfo │ │ │ │ │ │ ├── modules.dep │ │ │ │ │ │ ├── pcitable │ │ │ │ │ │ ├── scsi_priv.h │ │ │ │ │ │ └── scsi_transport_api.h │ │ │ │ │ ├── bin │ │ │ │ │ │ └── makedisk │ │ │ │ │ ├── cciss │ │ │ │ │ │ ├── Makefile │ │ │ │ │ │ ├── Makefile.build │ │ │ │ │ │ ├── cciss.c │ │ │ │ │ │ ├── cciss.h │ │ │ │ │ │ ├── cciss_cmd.h │ │ │ │ │ │ ├── cciss_scsi.c │ │ │ │ │ │ ├── cciss_scsi.h │ │ │ │ │ │ ├── modinfo │ │ │ │ │ │ ├── modules.dep │ │ │ │ │ │ └── pcitable │ │ │ │ │ ├── dist │ │ │ │ │ ├── e1000 │ │ │ │ │ │ ├── LICENSE │ │ │ │ │ │ ├── Makefile │ │ │ │ │ │ ├── Makefile.build │ │ │ │ │ │ ├── e1000.h │ │ │ │ │ │ ├── e1000_ethtool.c │ │ │ │ │ │ ├── e1000_hw.c │ │ │ │ │ │ ├── e1000_hw.h │ │ │ │ │ │ ├── e1000_main.c │ │ │ │ │ │ ├── e1000_osdep.h │ │ │ │ │ │ ├── e1000_param.c │ │ │ │ │ │ ├── modinfo │ │ │ │ │ │ ├── modules.dep │ │ │ │ │ │ └── pcitable │ │ │ │ │ ├── qla2xxx │ │ │ │ │ │ ├── modinfo │ │ │ │ │ │ ├── modules.dep │ │ │ │ │ │ ├── pcitable │ │ │ │ │ │ └── rpm │ │ │ │ │ │ │ ├── SOURCES │ │ │ │ │ │ │ ├── kmodtool_qla2xxx │ │ │ │ │ │ │ ├── ql2100_fw.bin │ │ │ │ │ │ │ ├── ql2200_fw.bin │ │ │ │ │ │ │ ├── ql2300_fw.bin │ │ │ │ │ │ │ ├── ql2322_fw.bin │ │ │ │ │ │ │ └── ql2400_fw.bin │ │ │ │ │ │ │ └── SPECS │ │ │ │ │ │ │ └── qla2xxx.spec │ │ │ │ │ ├── src │ │ │ │ │ │ └── rhdd │ │ │ │ │ ├── subdirs │ │ │ │ │ ├── tg3 │ │ │ │ │ │ ├── 2.6.24.4-1-i686 │ │ │ │ │ │ │ ├── Makefile │ │ │ │ │ │ │ ├── Makefile.build │ │ │ │ │ │ │ ├── tg3.c │ │ │ │ │ │ │ └── tg3.h │ │ │ │ │ │ ├── 2.6.24.4-1xen-i686 │ │ │ │ │ │ │ ├── Makefile │ │ │ │ │ │ │ ├── Makefile.build │ │ │ │ │ │ │ ├── tg3.c │ │ │ │ │ │ │ └── tg3.h │ │ │ │ │ │ ├── Makefile │ │ │ │ │ │ ├── Makefile.build │ │ │ │ │ │ ├── modinfo │ │ │ │ │ │ ├── modules.dep │ │ │ │ │ │ ├── pcitable │ │ │ │ │ │ ├── tg3.c │ │ │ │ │ │ └── tg3.h │ │ │ │ │ └── tmpl │ │ │ │ │ │ ├── new │ │ │ │ │ │ ├── README │ │ │ │ │ │ └── rpm │ │ │ │ │ │ │ ├── SOURCES │ │ │ │ │ │ │ └── kmodtool │ │ │ │ │ │ │ └── SPECS │ │ │ │ │ │ │ └── tmpl.spec │ │ │ │ │ │ └── old │ │ │ │ │ │ ├── Makefile │ │ │ │ │ │ ├── Makefile.build │ │ │ │ │ │ └── README │ │ │ │ ├── i386 │ │ │ │ │ ├── Makefile │ │ │ │ │ └── isolinux.cfg │ │ │ │ ├── splash │ │ │ │ │ ├── FlyingV1.jpg │ │ │ │ │ ├── Makefile │ │ │ │ │ ├── ViperLicensed.png │ │ │ │ │ ├── create_boot.msg.py │ │ │ │ │ ├── label.en_US.png │ │ │ │ │ ├── label.en_US.png.5.4 │ │ │ │ │ ├── logoUCSD.gif │ │ │ │ │ ├── mamba-splash.png │ │ │ │ │ ├── message │ │ │ │ │ ├── pngtolss │ │ │ │ │ └── v.png │ │ │ │ └── x86_64 │ │ │ │ │ ├── Makefile │ │ │ │ │ └── isolinux.cfg │ │ │ ├── loader │ │ │ │ ├── Makefile │ │ │ │ └── patch-files │ │ │ │ │ ├── anaconda-11.1.2.195 │ │ │ │ │ └── loader2 │ │ │ │ │ │ ├── Makefile │ │ │ │ │ │ ├── ftp.c │ │ │ │ │ │ ├── ftp.h │ │ │ │ │ │ ├── init.c │ │ │ │ │ │ ├── kickstart.c │ │ │ │ │ │ ├── loader.c │ │ │ │ │ │ ├── loader.h │ │ │ │ │ │ ├── net.c │ │ │ │ │ │ ├── net.h │ │ │ │ │ │ ├── urlinstall.c │ │ │ │ │ │ ├── urls.c │ │ │ │ │ │ └── urls.h │ │ │ │ │ ├── anaconda-11.1.2.209 │ │ │ │ │ └── loader2 │ │ │ │ │ │ ├── Makefile │ │ │ │ │ │ ├── ftp.c │ │ │ │ │ │ ├── ftp.h │ │ │ │ │ │ ├── init.c │ │ │ │ │ │ ├── kickstart.c │ │ │ │ │ │ ├── loader.c │ │ │ │ │ │ ├── loader.h │ │ │ │ │ │ ├── net.c │ │ │ │ │ │ ├── net.h │ │ │ │ │ │ ├── urlinstall.c │ │ │ │ │ │ ├── urls.c │ │ │ │ │ │ └── urls.h │ │ │ │ │ ├── anaconda-11.1.2.224 │ │ │ │ │ └── loader2 │ │ │ │ │ │ ├── Makefile │ │ │ │ │ │ ├── ftp.c │ │ │ │ │ │ ├── ftp.h │ │ │ │ │ │ ├── init.c │ │ │ │ │ │ ├── kickstart.c │ │ │ │ │ │ ├── loader.c │ │ │ │ │ │ ├── loader.h │ │ │ │ │ │ ├── net.c │ │ │ │ │ │ ├── net.h │ │ │ │ │ │ ├── urlinstall.c │ │ │ │ │ │ ├── urls.c │ │ │ │ │ │ └── urls.h │ │ │ │ │ ├── anaconda-11.1.2.242 │ │ │ │ │ └── loader2 │ │ │ │ │ │ ├── Makefile │ │ │ │ │ │ ├── ftp.c │ │ │ │ │ │ ├── ftp.h │ │ │ │ │ │ ├── init.c │ │ │ │ │ │ ├── kickstart.c │ │ │ │ │ │ ├── loader.c │ │ │ │ │ │ ├── loader.h │ │ │ │ │ │ ├── net.c │ │ │ │ │ │ ├── net.h │ │ │ │ │ │ ├── urlinstall.c │ │ │ │ │ │ ├── urls.c │ │ │ │ │ │ └── urls.h │ │ │ │ │ └── anaconda-11.1.2.259 │ │ │ │ │ └── loader2 │ │ │ │ │ ├── Makefile │ │ │ │ │ ├── ftp.c │ │ │ │ │ ├── ftp.h │ │ │ │ │ ├── init.c │ │ │ │ │ ├── kickstart.c │ │ │ │ │ ├── loader.c │ │ │ │ │ ├── loader.h │ │ │ │ │ ├── net.c │ │ │ │ │ ├── net.h │ │ │ │ │ ├── urlinstall.c │ │ │ │ │ ├── urls.c │ │ │ │ │ └── urls.h │ │ │ ├── rocks-po │ │ │ │ ├── ja.po │ │ │ │ ├── ko.po │ │ │ │ ├── zh_CN.po │ │ │ │ └── zh_TW.po │ │ │ └── version.mk │ │ └── 6 │ │ │ ├── images │ │ │ ├── Boot.mk │ │ │ ├── i386 │ │ │ │ ├── Makefile │ │ │ │ └── isolinux.cfg │ │ │ ├── splash │ │ │ │ ├── EmeraldBoa1.png │ │ │ │ ├── Makefile │ │ │ │ ├── create_boot.msg.py │ │ │ │ ├── label.en_US.png │ │ │ │ ├── mamba-splash.png │ │ │ │ ├── message │ │ │ │ └── pngtolss │ │ │ └── x86_64 │ │ │ │ ├── Makefile │ │ │ │ └── isolinux.cfg │ │ │ ├── loader │ │ │ ├── Makefile │ │ │ └── patch-files │ │ │ │ ├── anaconda-13.21.149 │ │ │ │ └── loader │ │ │ │ │ ├── Makefile.am │ │ │ │ │ ├── init.c │ │ │ │ │ ├── kickstart.c │ │ │ │ │ ├── loader.c │ │ │ │ │ ├── loader.h │ │ │ │ │ ├── net.c │ │ │ │ │ ├── net.h │ │ │ │ │ ├── urlinstall.c │ │ │ │ │ └── urls.c │ │ │ │ ├── anaconda-13.21.176 │ │ │ │ └── loader │ │ │ │ │ ├── Makefile.am │ │ │ │ │ ├── init.c │ │ │ │ │ ├── kickstart.c │ │ │ │ │ ├── loader.c │ │ │ │ │ ├── loader.h │ │ │ │ │ ├── net.c │ │ │ │ │ ├── net.h │ │ │ │ │ ├── urlinstall.c │ │ │ │ │ └── urls.c │ │ │ │ ├── anaconda-13.21.215 │ │ │ │ └── loader │ │ │ │ │ ├── Makefile.am │ │ │ │ │ ├── init.c │ │ │ │ │ ├── kickstart.c │ │ │ │ │ ├── loader.c │ │ │ │ │ ├── loader.h │ │ │ │ │ ├── net.c │ │ │ │ │ ├── net.h │ │ │ │ │ ├── urlinstall.c │ │ │ │ │ └── urls.c │ │ │ │ ├── anaconda-13.21.229 │ │ │ │ └── loader │ │ │ │ │ ├── Makefile.am │ │ │ │ │ ├── init.c │ │ │ │ │ ├── kickstart.c │ │ │ │ │ ├── loader.c │ │ │ │ │ ├── loader.h │ │ │ │ │ ├── net.c │ │ │ │ │ ├── net.h │ │ │ │ │ ├── urlinstall.c │ │ │ │ │ └── urls.c │ │ │ │ └── anaconda-13.21.239 │ │ │ │ └── loader │ │ │ │ ├── Makefile.am │ │ │ │ ├── init.c │ │ │ │ ├── kickstart.c │ │ │ │ ├── loader.c │ │ │ │ ├── loader.c.orig │ │ │ │ ├── loader.h │ │ │ │ ├── net.c │ │ │ │ ├── net.c.orig │ │ │ │ ├── net.h │ │ │ │ ├── urlinstall.c │ │ │ │ └── urls.c │ │ │ ├── rocks-po │ │ │ ├── ja.po │ │ │ ├── ko.po │ │ │ ├── zh_CN.po │ │ │ └── zh_TW.po │ │ │ └── version.mk │ ├── fixup-modules-dep.py │ ├── i386.mk │ ├── ia64.mk │ ├── init.d │ │ └── rocks-grub │ ├── mk-images │ ├── prep-grub.sh │ ├── prep-initrd-5.py │ ├── prep-initrd-6.py │ ├── rocks-boot.spec.in-5 │ ├── rocks-boot.spec.in-6 │ └── x86_64.mk ├── sqlite │ ├── Makefile │ ├── filter-provides.sh │ └── version.mk └── tracker │ ├── Makefile │ ├── checkmd5.c │ ├── client.c │ ├── dump-tables.c │ ├── hashit.c │ ├── lib.c │ ├── peer-done.c │ ├── server.c │ ├── server2.c │ ├── server4.c │ ├── shuffle.c │ ├── stop-server.c │ ├── tracker-client.c │ ├── tracker.ak │ ├── tracker.h │ ├── unregister-file.c │ └── version.mk └── version.mk /.gitignore: -------------------------------------------------------------------------------- 1 | 2 | # build directory 3 | BUILD/ 4 | RPMS/ 5 | SOURCES/ 6 | SPECS/ 7 | 8 | 9 | *.pyc 10 | 11 | _os 12 | _arch 13 | _distribution 14 | 15 | # ignore version.mk 16 | rocks-version.mk 17 | rocks-version-common.mk 18 | 19 | # ignore python.mk 20 | python.mk 21 | 22 | # ignore Rules files 23 | Rules-install.mk 24 | Rules-linux-centos.mk 25 | Rules-linux.mk 26 | Rules-rcfiles.mk 27 | Rules-scripts.mk 28 | Rules.mk 29 | Rolls.mk 30 | 31 | # --- BEGIN --- binaries files 32 | src/fastcgi/fcgi-2.4.0.tar.gz 33 | src/foundation-pysqlite/pysqlite-2.6.3.tar.gz 34 | src/keyutils/keyutils-1.2-1.el5.src.rpm 35 | src/lighttpd/lighttpd-1.4.26.tar.gz 36 | src/lighttpd/lighttpd-1.4.28.tar.gz 37 | src/rocks-boot/enterprise/5/images/drivers/ddiskit-0.9.9.tar.bz2 38 | src/rocks-boot/enterprise/5/images/drivers/qla2xxx/rpm/SOURCES/qla2xxx-8170.tar.bz2 39 | src/rocks-boot/enterprise/5/images/splash/chimi.psd 40 | src/rocks-boot/enterprise/5/images/splash/EmeraldBoa1-5.xcf 41 | src/rocks-boot/enterprise/5/images/splash/label.en_US.graffle 42 | src/rocks-boot/enterprise/5/images/splash/v1.psd 43 | src/rocks-boot/enterprise/5/loader/anaconda-11.1.2.195.tar.bz2 44 | src/rocks-boot/enterprise/5/loader/anaconda-11.1.2.209.tar.bz2 45 | src/rocks-boot/enterprise/5/loader/anaconda-11.1.2.224.tar.bz2 46 | src/rocks-boot/enterprise/5/loader/anaconda-11.1.2.242.tar.bz2 47 | src/rocks-boot/enterprise/5/loader/anaconda-11.1.2.259.tar.bz2 48 | src/rocks-boot/enterprise/6/images/splash/EmeraldBoa1.xcf 49 | src/rocks-boot/enterprise/6/images/splash/SideWinder.xcf 50 | src/rocks-boot/enterprise/6/loader/anaconda-13.21.149.tar.bz2 51 | src/rocks-boot/enterprise/6/loader/anaconda-13.21.176.tar.bz2 52 | src/rocks-boot/enterprise/6/loader/anaconda-13.21.215.tar.bz2 53 | src/rocks-boot/enterprise/6/loader/anaconda-13.21.229.tar.bz2 54 | src/sqlite/sqlite-autoconf-3071000.tar.gz 55 | # --- END --- 56 | -------------------------------------------------------------------------------- /.kernel.metadata: -------------------------------------------------------------------------------- 1 | 2329404159e8b8315e524b9eaf1de763202c6e6a src/fastcgi/fcgi-2.4.0.tar.gz 0B0LD0shfkvCRRmEwMm5PblpvY3M 2 | b1eed16107232aebec1826b671c99a76e26afa7b src/foundation-pysqlite/pysqlite-2.6.3.tar.gz 0B0LD0shfkvCRR01ndXJBS1l1QXc 3 | 69ec61e2107d6653ec11616756e84a7752b3ffc2 src/keyutils/keyutils-1.2-1.el5.src.rpm 0B0LD0shfkvCRNTlzb1d4dzRaQVk 4 | c22642dc3616043293fb895b9f049b9270dbb2a0 src/lighttpd/lighttpd-1.4.26.tar.gz 0B0LD0shfkvCRVlh6cmFMbE5BVTQ 5 | 24d614f75b3aba18f3cff5e52a27ec9fdcf853b5 src/lighttpd/lighttpd-1.4.28.tar.gz 0B0LD0shfkvCRZGZxUHNvVW9LUHM 6 | c652f6858c1ab3a75a5d19c9dfa81be81a906821 src/rocks-boot/enterprise/5/images/drivers/ddiskit-0.9.9.tar.bz2 0B0LD0shfkvCRVGp2SV9xUlJ3STg 7 | 4ba9ffed2e896213d6594b9a699d8ab8ddea1ff4 src/rocks-boot/enterprise/5/images/drivers/qla2xxx/rpm/SOURCES/qla2xxx-8170.tar.bz2 0B0LD0shfkvCRU0NYSE5SUGl4cW8 8 | 08518c7aac27a7b0d29c1cf659b9a627d6e572ae src/rocks-boot/enterprise/5/images/splash/chimi.psd 0B0LD0shfkvCRX0ZwdHpoQVpZS28 9 | c5432fc1281f00e1543e917f35deb0e19673f506 src/rocks-boot/enterprise/5/images/splash/EmeraldBoa1-5.xcf 0B0LD0shfkvCRR3hqWGN0X1ZYakk 10 | 9e34f0f4d4ed36758dedd42aee3d14aa3decd232 src/rocks-boot/enterprise/5/images/splash/label.en_US.graffle 0B0LD0shfkvCRcHVqeWlmUjd3SjQ 11 | 0477127a9d876cb1c03d5fe3bf15f796e5bdce1b src/rocks-boot/enterprise/5/images/splash/v1.psd 0B0LD0shfkvCRWGFJcVVCaFlfZVU 12 | bd891618f9db67b995f17024fb123f5f6e9c6ded src/rocks-boot/enterprise/5/loader/anaconda-11.1.2.195.tar.bz2 0B0LD0shfkvCRRVNFYThBUTd4WWs 13 | 6f0c0334fa6b8aed232a2999755ec228bdc1396a src/rocks-boot/enterprise/5/loader/anaconda-11.1.2.209.tar.bz2 0B0LD0shfkvCRU3RId3JZOElkOXM 14 | 97d46b127e4e54bd754c428e8e79a26d99bdaded src/rocks-boot/enterprise/5/loader/anaconda-11.1.2.224.tar.bz2 0B0LD0shfkvCRYjlqUmw2Mi1kV2s 15 | 5291861225db9915bdbb08fd5b2053d11d6d970a src/rocks-boot/enterprise/5/loader/anaconda-11.1.2.242.tar.bz2 0B0LD0shfkvCRTTI4ajJiTVp5bVE 16 | 05eabcc50cedcd1b141e4d6de029549e1a811347 src/rocks-boot/enterprise/5/loader/anaconda-11.1.2.259.tar.bz2 0B0LD0shfkvCRNV9FUUZzZU5sSE0 17 | 9a29618dc0f03201f2a15a3d992685c6a9893490 src/rocks-boot/enterprise/6/images/splash/EmeraldBoa1.xcf 0B0LD0shfkvCRTnF2WmJpU1JESGc 18 | d036041e4b09a3601264729c37b886a7590e6b95 src/rocks-boot/enterprise/6/images/splash/SideWinder.png 0B0LD0shfkvCRN3dEOFhncFczcDg 19 | de0312fc1c783b60bc3e6b2fb0f878d98c30dd63 src/rocks-boot/enterprise/6/images/splash/SideWinder.xcf 0B0LD0shfkvCRMFdaTEhtREdOOGc 20 | a9730e5f56730075405e0b5823aca7ed40b343b6 src/rocks-boot/enterprise/6/loader/anaconda-13.21.229.tar.bz2 0B0LD0shfkvCRS29zRmZKRlRGSUU 21 | 06446505f7bbddec2f1c645b79b2df5702adb6de src/rocks-boot/enterprise/6/loader/anaconda-13.21.239.tar.bz2 0B0LD0shfkvCRaW9GWTZHTWNDY3M 22 | 0442d5a1bff50153039951b09db649864d8af0bb src/sqlite/sqlite-autoconf-3071000.tar.gz 0B0LD0shfkvCRTU1XU1BuRm94X0k 23 | d097c6cec71ffede77be9f13f4ceee9880c0a5d7 src/opt-atk/atk-2.16.0.tar.xz 0B0LD0shfkvCRNFJiNE1STy1IV3c 24 | 88176375f97ecd9ff45e7b5fd5ab80d4b7db6b34 src/opt-glib2/glib-2.44.1.tar.xz 0B0LD0shfkvCRLWd0aUVVU2diVHM 25 | 65a48c4665256f8633401d813a925b06cd6d2a26 src/opt-gtk+/gtk+-3.16.7.tar.xz 0B0LD0shfkvCRSE9NaTB3TUxldVk 26 | 4cafedd173b64fc3898a39901a7c9c11ed75779c src/opt-glade/glade-3.19.0.tar.xz 0B0LD0shfkvCRM2tRLUs2VW11MVU 27 | -------------------------------------------------------------------------------- /DESCRIPTION: -------------------------------------------------------------------------------- 1 | Boot Kernel for Rocks 2 | -------------------------------------------------------------------------------- /OWNER: -------------------------------------------------------------------------------- 1 | Rocks 2 | -------------------------------------------------------------------------------- /graphs/default/kernel.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | The Kernel Roll 7 | 8 | 9 | 10 | 11 | Copyright (c) 2000 - 2017 The Regents of the University of California. 12 | All rights reserved. Rocks(r) v6.2/v7.0 www.rocksclusters.org 13 | 14 | 15 | 16 | 17 | 18 | $Log: kernel.xml,v $ 19 | Revision 1.16 2012/05/06 05:49:14 phil 20 | Copyright Storm for Mamba 21 | 22 | Revision 1.15 2011/07/23 02:31:14 phil 23 | Viper Copyright 24 | 25 | Revision 1.14 2010/09/07 23:53:23 bruno 26 | star power for gb 27 | 28 | Revision 1.13 2009/05/01 19:07:20 mjk 29 | chimi con queso 30 | 31 | Revision 1.12 2008/10/18 00:56:12 mjk 32 | copyright 5.1 33 | 34 | Revision 1.11 2008/03/06 23:41:55 mjk 35 | copyright storm on 36 | 37 | Revision 1.10 2008/02/22 19:16:26 bruno 38 | new XML node file to help support kernel roll rebuilding 39 | 40 | Revision 1.9 2007/06/23 04:03:48 mjk 41 | mars hill copyright 42 | 43 | Revision 1.8 2006/09/11 22:49:09 mjk 44 | monkey face copyright 45 | 46 | Revision 1.7 2006/08/10 00:11:14 mjk 47 | 4.2 copyright 48 | 49 | Revision 1.6 2005/10/12 18:10:01 mjk 50 | final copyright for 4.1 51 | 52 | Revision 1.5 2005/09/16 01:03:38 mjk 53 | updated copyright 54 | 55 | Revision 1.4 2005/03/04 01:40:09 mjk 56 | massive graph cleanup 57 | 58 | Revision 1.3 2004/09/18 14:30:15 bruno 59 | some tweaks to let anaconda decide which package to install (kernel or 60 | kernel-smp) because if we explictly set it (e.g., kernel-smp), then 61 | there is the case where the kernel-smp package is installed on an EM64T 62 | node and only the 'kernel' package should be on it. 63 | 64 | Revision 1.2 2004/09/16 21:48:36 bruno 65 | make sure kernel, kernel-smp and the unsupported kernel modules are 66 | installed, while still including the kernel-bigmem RPMS in the roll 67 | 68 | Revision 1.1 2004/09/15 01:24:54 bruno 69 | phil -- you hate me, you love me. 70 | 71 | 72 | 73 | 74 | 80 | 81 | 82 | kernel 83 | 84 | 85 | 89 | 90 | kernel 91 | 92 | 93 | 94 | kernel-server 95 | 96 | 97 | 98 | 99 | -------------------------------------------------------------------------------- /manifest: -------------------------------------------------------------------------------- 1 | fcgi 2 | keyutils 3 | keyutils-libs 4 | keyutils-libs-devel 5 | lighttpd 6 | rocks-boot 7 | rocks-boot-auto 8 | rocks-boot-cdrom 9 | rocks-boot-netstage 10 | rocks-boot-xen 11 | rocks-tracker 12 | roll-kernel-kickstart 13 | -------------------------------------------------------------------------------- /nodes/kernel-extra.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | The Kernel Roll 8 | 9 | This file contains all the kernel packages which are 'extra' and 10 | optional. 11 | 12 | 13 | 14 | Copyright (c) 2000 - 2017 The Regents of the University of California. 15 | All rights reserved. Rocks(r) v6.2/v7.0 www.rocksclusters.org 16 | 17 | 18 | 19 | 20 | $Log: kernel-extra.xml,v $ 21 | Revision 1.18 2012/05/06 05:49:14 phil 22 | Copyright Storm for Mamba 23 | 24 | Revision 1.17 2011/07/23 02:31:14 phil 25 | Viper Copyright 26 | 27 | Revision 1.16 2010/09/07 23:53:23 bruno 28 | star power for gb 29 | 30 | Revision 1.15 2009/05/01 19:07:20 mjk 31 | chimi con queso 32 | 33 | Revision 1.14 2008/10/18 00:56:12 mjk 34 | copyright 5.1 35 | 36 | Revision 1.13 2008/03/25 19:48:05 bruno 37 | tweaks for building the OS roll 38 | 39 | Revision 1.12 2008/03/25 19:18:07 bruno 40 | make sure all the kernel packages get put on the OS roll. 41 | 42 | Revision 1.11 2008/03/06 23:41:55 mjk 43 | copyright storm on 44 | 45 | Revision 1.10 2007/06/23 04:03:48 mjk 46 | mars hill copyright 47 | 48 | Revision 1.9 2006/09/11 22:49:10 mjk 49 | monkey face copyright 50 | 51 | Revision 1.8 2006/08/10 00:11:14 mjk 52 | 4.2 copyright 53 | 54 | Revision 1.7 2005/10/12 18:10:01 mjk 55 | final copyright for 4.1 56 | 57 | Revision 1.6 2005/09/16 01:03:38 mjk 58 | updated copyright 59 | 60 | Revision 1.5 2005/03/12 00:01:59 bruno 61 | minor checkin 62 | 63 | Revision 1.4 2005/03/04 01:40:09 mjk 64 | massive graph cleanup 65 | 66 | Revision 1.3 2004/09/18 15:09:35 bruno 67 | ok, i think i really got it now. 68 | 69 | backed out the change to kgen.py 70 | 71 | moved the 'disable' kernel package from node-thin to media-server 72 | 73 | and, make sure that a kickstarting host doesn't explictly call out the 74 | kernel or kernel-smp packages 75 | 76 | Revision 1.2 2004/09/16 22:49:45 fds 77 | No hugemem needed for real architectures. 78 | 79 | Revision 1.1 2004/09/16 21:48:37 bruno 80 | make sure kernel, kernel-smp and the unsupported kernel modules are 81 | installed, while still including the kernel-bigmem RPMS in the roll 82 | 83 | Revision 1.1 2004/09/15 01:24:54 bruno 84 | phil -- you hate me, you love me. 85 | 86 | 87 | 88 | kernel 89 | kernel-PAE 90 | kernel-PAE-devel 91 | 92 | 93 | 94 | -------------------------------------------------------------------------------- /nodes/kernel-server.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | Packages and configuration that should only be installed on servers 7 | (e.g., frontend machines) 8 | 9 | 10 | 11 | 12 | Copyright (c) 2000 - 2007 The Regents of the University of California. 13 | All rights reserved. Rocks(tm) v4.3 www.rocksclusters.org 14 | 15 | 16 | 17 | 18 | $Log: kernel-server.xml,v $ 19 | Revision 1.8 2012/03/07 01:45:06 clem 20 | fix for the sqlite lib, yum was leaving on the system only foundation-sqlite 21 | need to explicitly specify the redhat sqlite package 22 | 23 | Revision 1.7 2012/03/02 07:12:23 phil 24 | install foundation-sqlite on servers 25 | 26 | Revision 1.6 2010/07/19 23:37:01 bruno 27 | add an init script for the rocks tracker 28 | 29 | Revision 1.5 2010/07/15 19:01:00 bruno 30 | support for different trackers and package servers 31 | 32 | Revision 1.4 2009/05/22 16:26:14 bruno 33 | need keyutils to rebuild kernel roll 34 | 35 | Revision 1.3 2009/05/01 17:36:03 bruno 36 | package needed to build rocks-boot 37 | 38 | Revision 1.2 2008/03/31 21:00:18 bruno 39 | needed to rebuild kernel roll 40 | 41 | Revision 1.1 2008/02/22 19:16:26 bruno 42 | new XML node file to help support kernel roll rebuilding 43 | 44 | 45 | 46 | 47 | rocks-boot 48 | 49 | 50 | pcre 51 | pcre-devel 52 | keyutils 53 | keyutils-libs-devel 54 | iscsi-initiator-utils 55 | foundation-fcgi 56 | rocks-tracker 57 | foundation-sqlite 58 | foundation-pysqlite 59 | sqlite.x86_64 60 | 61 | 62 | 63 | 64 | /var/log/tracker-server.log \ 75 | 2>&1 &' 76 | RETVAL=$? 77 | 78 | touch /var/lock/subsys/tracker-server 79 | return $RETVAL 80 | } 81 | 82 | stop() { 83 | action "Stopping Rocks Tracker: " killall tracker-server 84 | RETVAL=$? 85 | 86 | rm -f /var/lock/subsys/tracker-server 87 | return $RETVAL 88 | } 89 | 90 | # 91 | # main 92 | # 93 | case "$1" in 94 | start) 95 | start 96 | ;; 97 | 98 | stop) 99 | stop 100 | ;; 101 | 102 | restart) 103 | stop 104 | start 105 | ;; 106 | 107 | *) 108 | echo "Usage: $0 {start|stop|restart}" 109 | RETVAL=1 110 | esac 111 | 112 | exit $RETVAL 113 | ]]> 114 | 115 | 116 | 117 | /sbin/chkconfig rocks-tracker on 118 | 119 | 120 | 121 | 122 | 123 | 124 | -------------------------------------------------------------------------------- /src/anaconda-rocks-dracut/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # $Id: Makefile,v 1.14 2012/11/27 00:49:05 phil Exp $ 3 | # 4 | # @Copyright@ 5 | # 6 | # Rocks(r) 7 | # www.rocksclusters.org 8 | # version 6.2 (SideWinder) 9 | # version 7.0 (Manzanita) 10 | # 11 | # Copyright (c) 2000 - 2017 The Regents of the University of California. 12 | # All rights reserved. 13 | # 14 | # Redistribution and use in source and binary forms, with or without 15 | # modification, are permitted provided that the following conditions are 16 | # met: 17 | # 18 | # 1. Redistributions of source code must retain the above copyright 19 | # notice, this list of conditions and the following disclaimer. 20 | # 21 | # 2. Redistributions in binary form must reproduce the above copyright 22 | # notice unmodified and in its entirety, this list of conditions and the 23 | # following disclaimer in the documentation and/or other materials provided 24 | # with the distribution. 25 | # 26 | # 3. All advertising and press materials, printed or electronic, mentioning 27 | # features or use of this software must display the following acknowledgement: 28 | # 29 | # "This product includes software developed by the Rocks(r) 30 | # Cluster Group at the San Diego Supercomputer Center at the 31 | # University of California, San Diego and its contributors." 32 | # 33 | # 4. Except as permitted for the purposes of acknowledgment in paragraph 3, 34 | # neither the name or logo of this software nor the names of its 35 | # authors may be used to endorse or promote products derived from this 36 | # software without specific prior written permission. The name of the 37 | # software includes the following terms, and any derivatives thereof: 38 | # "Rocks", "Rocks Clusters", and "Avalanche Installer". For licensing of 39 | # the associated name, interested parties should contact Technology 40 | # Transfer & Intellectual Property Services, University of California, 41 | # San Diego, 9500 Gilman Drive, Mail Code 0910, La Jolla, CA 92093-0910, 42 | # Ph: (858) 534-5815, FAX: (858) 534-7345, E-MAIL:invent@ucsd.edu 43 | # 44 | # THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' 45 | # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, 46 | # THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 47 | # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS 48 | # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 49 | # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 50 | # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR 51 | # BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 52 | # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 53 | # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN 54 | # IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 55 | # 56 | # @Copyright@ 57 | # 58 | DRACUT_SCRIPTS = module-setup.sh start-lighttpd.sh start-lighttpd-systemd.sh rockspart.sh stop-lighttpd.sh peer-done.sh 59 | REDHAT.ROOT = $(CURDIR)/../../ 60 | -include $(ROCKSROOT)/etc/Rules.mk 61 | include Rules.mk 62 | 63 | 64 | build: 65 | 66 | install:: 67 | mkdir -p $(ROOT)/$(DRACUT_DEST)/$(MODDIR) 68 | $(INSTALL) -m 755 $(DRACUT_SCRIPTS) $(ROOT)/$(DRACUT_DEST)/$(MODDIR) 69 | mkdir -p $(ROOT)/$(SYSTEMD_DEST) 70 | $(INSTALL) -m 755 $(SYSTEMD_SCRIPTS) $(ROOT)/$(SYSTEMD_DEST) 71 | $(INSTALL) -m 755 $(KSFETCH) $(ROOT) 72 | 73 | 74 | clean:: 75 | rm -rf $(NAME)-$(VERSION) 76 | rm -f $(NAME).spec.in 77 | 78 | -------------------------------------------------------------------------------- /src/anaconda-rocks-dracut/README: -------------------------------------------------------------------------------- 1 | These are hooks into anaconda to manage some rocks-added capabilities. 2 | #1 - lighttpd service (used for avalanche/scalable installation) must be started in 3 | the context of the initial ram disk AND restarted when the installer 4 | transitions from its initrd state to the running state. It's a more 5 | complicated setup because of this. 6 | 7 | #2 - rockspart service. This enables stateful partitions on compute nodes. This needs to be called when in the running state, but before anaconda the kickstart 8 | file is read by anaconda. It is setup as systemd service. It is turned on 9 | in the postinstall configuration of the rocks-boot-7 package. 10 | -------------------------------------------------------------------------------- /src/anaconda-rocks-dracut/lighttpd.service: -------------------------------------------------------------------------------- 1 | [Unit] 2 | Description=lighttpd service used during Rocks installation 3 | Before=anaconda-pre.service 4 | Requires=basic.target 5 | After=basic.target 6 | 7 | [Service] 8 | Type=forking 9 | PIDFile=/var/run/lighttpd.pid 10 | ExecStart=/lighttpd/sbin/lighttpd -f /lighttpd/conf/lighttpd.conf 11 | ExecStartPre=/lib/dracut/modules.d/70rocks/start-lighttpd-systemd.sh 12 | ExecStop=/tracker/peer-done 13 | KillSignal=SIGINT 14 | Restart=on-abort 15 | 16 | [Install] 17 | WantedBy=anaconda.target 18 | -------------------------------------------------------------------------------- /src/anaconda-rocks-dracut/module-setup.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # module-setup.sh for rocks 3 | # This makes certain that we have tracker and lighttpd in the ramdisk 4 | # 5 | 6 | 7 | check() { 8 | [[ $hostonly ]] && return 1 9 | return 0 10 | } 11 | 12 | depends() { 13 | echo livenet ifcfg 14 | return 0 15 | } 16 | 17 | install() { 18 | # binaries we want in initramfs 19 | # tracker/lightttpd 20 | for i in $(find /tracker -type f); do 21 | inst_binary $i 22 | done 23 | for i in $(find /lighttpd -type d); do 24 | inst_binary $i 25 | done 26 | for i in $(find /lighttpd -type f); do 27 | inst_binary $i 28 | done 29 | # get the fetchRocksKS.py script 30 | inst_binary /fetchRocksKS.py 31 | 32 | # bring up lighttpd in initrd. Can get and cache installer, 33 | # xml files, pkgs. 34 | inst_hook initqueue/online 10 "$moddir/start-lighttpd.sh" 35 | 36 | # gracefully stop lighttpd when transitioning to real root 37 | inst_hook pre-pivot 20 "$moddir/stop-lighttpd.sh" 38 | 39 | # unregister all files and then gracefully stop lighttpd 40 | # when shutting down 41 | inst_hook shutdown 19 "$moddir/peer-done.sh" 42 | inst_hook shutdown 20 "$moddir/stop-lighttpd.sh" 43 | } 44 | 45 | -------------------------------------------------------------------------------- /src/anaconda-rocks-dracut/peer-done.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # Tell the tracker to unregister everything. 3 | # This is called if we perform a shutdown in the initial ram disk 4 | TRACKERHOME=/tracker 5 | if [ -x $TRACKERHOME/peer-done ]; then 6 | $TRACKERHOME/peer-done 7 | fi 8 | return 0 9 | -------------------------------------------------------------------------------- /src/anaconda-rocks-dracut/rockspart.service: -------------------------------------------------------------------------------- 1 | [Unit] 2 | Description=Rocks Partitioning Processing 3 | After=anaconda-pre.service 4 | Requires=basic.target 5 | Before=anaconda.service 6 | 7 | [Service] 8 | Type=oneshot 9 | ExecStart=/lib/dracut/modules.d/70rocks/rockspart.sh 10 | 11 | [Install] 12 | WantedBy=anaconda.target 13 | -------------------------------------------------------------------------------- /src/anaconda-rocks-dracut/rockspart.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | PARTFILE="/tmp/partition-info" 3 | /opt/rocks/bin/python /opt/rocks/lib/python2.7/site-packages/rocks/do_partition.py > $PARTFILE 4 | -------------------------------------------------------------------------------- /src/anaconda-rocks-dracut/start-lighttpd-systemd.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # start lighttpd 3 | LIGHTROOT=/lighttpd 4 | EXECUTABLE=$LIGHTROOT/sbin/lighttpd 5 | CONF=$LIGHTROOT/conf/lighttpd.conf 6 | TRACKERROOT=/tracker 7 | CLIENTCONF=/tmp/rocks.conf 8 | # Make sure we have a tracker configuration 9 | if [ ! -f $CLIENTCONF ]; then 10 | cat /proc/cmdline | awk -f /tracker/tracker.ak > $CLIENTCONF 11 | fi 12 | 13 | NZCONF=$(cat $CLIENTCONF) 14 | if [ "x$NZCONF" == "x" ]; then /bin/rm $CLIENTCONF; fi 15 | 16 | ## Make sure our runtime links are there. /run 17 | ## is a ram disk that is the rest of client ram 18 | if [ ! -d /run/tracker ]; then 19 | mkdir /run/tracker 20 | fi; 21 | 22 | if [ ! -d /install ]; then 23 | ln -s /run/tracker /install 24 | fi; 25 | -------------------------------------------------------------------------------- /src/anaconda-rocks-dracut/start-lighttpd.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # start lighttpd 3 | LIGHTROOT=/lighttpd 4 | EXECUTABLE=$LIGHTROOT/sbin/lighttpd 5 | CONF=$LIGHTROOT/conf/lighttpd.conf 6 | TRACKERROOT=/tracker 7 | CLIENTCONF=/tmp/rocks.conf 8 | # Make sure we have a tracker configuration 9 | if [ ! -f $CLIENTCONF ]; then 10 | /usr/bin/cat /proc/cmdline | /usr/bin/awk -f /tracker/tracker.ak > $CLIENTCONF 11 | fi 12 | 13 | NZCONF=$(/usr/bin/cat $CLIENTCONF) 14 | if [ "x$NZCONF" == "x" ]; then return 0; fi 15 | 16 | # check if lighttpd is already running. if so. We're done 17 | ps ax | grep lighttpd | grep -q -v grep 18 | if [ $? -eq 0 ]; then return 0; fi 19 | 20 | if [ ! -d /run/tracker ]; then 21 | mkdir /run/tracker 22 | fi; 23 | 24 | if [ ! -d /install ]; then 25 | ln -s /run/tracker /install 26 | fi; 27 | 28 | ## Start up lighttpd 29 | if [ -x $EXECUTABLE -a -f $CONF ]; then 30 | $EXECUTABLE -f $CONF 31 | fi 32 | -------------------------------------------------------------------------------- /src/anaconda-rocks-dracut/stop-lighttpd.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # Find lighttpd process and send it a SIGINT to complete existing connections 3 | ID=$(ps ax | grep lighttpd | grep -q -v grep | awk '{print $1}') 4 | if [ "x$ID" != "x" ]; then 5 | kill -INT $ID 6 | fi 7 | return 0 8 | -------------------------------------------------------------------------------- /src/anaconda-rocks-dracut/version.mk: -------------------------------------------------------------------------------- 1 | NAME = anaconda-rocks-dracut 2 | RELEASE = 1 3 | DRACUT_DEST = /usr/lib/dracut/modules.d 4 | MODDIR = 70rocks 5 | SYSTEMD_FOLDER = /lib/systemd/system 6 | SYSTEMD_INITSCRIPT = lighttpd.service 7 | SYSTEMD_PARTSCRIPT = rockspart.service 8 | KSFETCH = fetchRocksKS.py 9 | 10 | SYSTEMD_SCRIPTS=$(SYSTEMD_INITSCRIPT) $(SYSTEMD_PARTSCRIPT) 11 | SYSTEMD_DEST=$(SYSTEMD_FOLDER) 12 | 13 | RPM.FILES = "$(SYSTEMD_DEST)/*\\n$(DRACUT_DEST)/*\\n/$(KSFETCH)" 14 | RPM.EXTRAS = "%define __python /bin/true" 15 | -------------------------------------------------------------------------------- /src/anaconda-rocks/product/run/install/product/pyanaconda/record_partitions.py: -------------------------------------------------------------------------------- 1 | #!/opt/rocks/bin/python 2 | 3 | import sys 4 | sys.path.append('/tmp/product') 5 | import rocks_partition 6 | import httplib 7 | import random 8 | import time 9 | import string 10 | sys.path.append('/tmp') 11 | import db_partition_info 12 | 13 | def sendit(server, req, nodepartinfo): 14 | status = 0 15 | 16 | h = httplib.HTTPSConnection(server, key_file = None, cert_file = None) 17 | h.putrequest('GET', '/install/sbin/public/setDbPartitions.cgi') 18 | 19 | h.putheader('X-Rocks-PartitionInfo', repr(nodepartinfo)) 20 | 21 | try: 22 | h.endheaders() 23 | response = h.getresponse() 24 | status = response.status 25 | except: 26 | # 27 | # assume the error occurred due to an 28 | # authorization problem 29 | # 30 | status = 403 31 | pass 32 | 33 | h.close() 34 | return status 35 | 36 | # 37 | # main 38 | # 39 | p = rocks_partition.RocksPartition() 40 | 41 | # 42 | # get the list of hard disks and software raid devices 43 | # 44 | disks = p.getDisks() + p.getRaids() 45 | nodepartinfo = p.getNodePartInfo(disks) 46 | 47 | # 48 | # only try to report the partitions back to the frontend, if this isn't 49 | # a frontend 50 | # 51 | file = open('/proc/cmdline', 'r') 52 | args = string.split(file.readline()) 53 | file.close() 54 | 55 | if 'build' not in args: 56 | random.seed(int(time.time())) 57 | 58 | for i in range(0, 5): 59 | status = sendit(db_partition_info.KickstartHost, 60 | '/install/sbin/public/setDbPartitions.cgi', 61 | nodepartinfo) 62 | 63 | if status == 200: 64 | break 65 | else: 66 | time.sleep(random.randint(0, 10)) 67 | 68 | # 69 | # mark each disk as a 'rocks' disk -- this let's us know that we have 70 | # 'seen' and configured this disk 71 | # 72 | for disk in nodepartinfo.keys(): 73 | p.isRocksDisk(nodepartinfo[disk], touchit = 1) 74 | 75 | -------------------------------------------------------------------------------- /src/anaconda-rocks/updates/opt/rocks/bin/builddb.sh: -------------------------------------------------------------------------------- 1 | #! /bin/bash 2 | # initialize the rocks db for in memory during graphical frontend installation 3 | # Hacky bootstrap if given the core roll iso 4 | # Creates in local directory 5 | WHERE=$1 6 | HERE=`pwd` 7 | ROCKS=/opt/rocks/bin/rocks 8 | RPM2CPIO=rpm2cpio 9 | MYNAME=$(hostname -s) 10 | 11 | # Get the nodes/graphs files from the roll itself. These will be put under 12 | # $CURDIR/export/profile 13 | cd $WHERE 14 | for roll in contrib/*/*/*/roll-*-kickstart-*.noarch.rpm; do 15 | $RPM2CPIO $roll | cpio -id 16 | done 17 | 18 | # Now bootstrap the database 19 | if [ ! -d /var/opt/rocks/mysql ]; then 20 | mkdir -p /var/opt/rocks/mysql 21 | fi 22 | NODES=export/profile/nodes 23 | tmpfile=$(/bin/mktemp) 24 | /bin/cat $NODES/database.xml $NODES/database-schema.xml $NODES/database-sec.xml | $ROCKS report post attrs="{'hostname':'', 'HttpRoot':'/var/www/html','os':'linux'}" > $tmpfile 25 | if [ $? != 0 ]; then echo "FAILURE to create script for bootstrapping the Database"; exit -1; fi 26 | /bin/sh $tmpfile 27 | # /bin/rm $tmpfile 28 | MYNAME=`hostname -s` 29 | $ROCKS add distribution rocks-dist 30 | $ROCKS add appliance bootstrap node=server 31 | $ROCKS add host $MYNAME rack=0 rank=0 membership=bootstrap 32 | 33 | -------------------------------------------------------------------------------- /src/anaconda-rocks/updates/org_rocks_rolls/RocksEnv.py: -------------------------------------------------------------------------------- 1 | class RocksEnv(object): 2 | def __init__(self): 3 | self.cmdline = open('/proc/cmdline','r').read().strip() 4 | p=map(lambda x: x.split("="),self.cmdline.split()) 5 | self.cmdargs=dict(map(lambda x: x if len(x) == 2 else [x[0],x[0]],p)) 6 | @property 7 | def clientInstall(self): 8 | """ read /proc/cmdline and determine if a client install """ 9 | try: 10 | return self.cmdargs['rocks'] == 'client' 11 | except: 12 | return False 13 | 14 | @property 15 | def trackerPath(self): 16 | """ read /proc/cmdline and get the tracker.path """ 17 | try: 18 | return self.cmdargs['tracker.path'] 19 | except: 20 | return None 21 | 22 | @property 23 | def central(self): 24 | """ read /proc/cmdline and get the central""" 25 | try: 26 | return self.cmdargs['central'] 27 | except: 28 | return None 29 | 30 | -------------------------------------------------------------------------------- /src/anaconda-rocks/updates/org_rocks_rolls/__init__.py: -------------------------------------------------------------------------------- 1 | # do not import gui package here because it imports Gtk which causes a traceback 2 | # if X server is not yet running 3 | # import gui 4 | import ks 5 | -------------------------------------------------------------------------------- /src/anaconda-rocks/updates/org_rocks_rolls/categories/RocksRolls.py: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (C) 2013 Red Hat, Inc. 3 | # 4 | # This copyrighted material is made available to anyone wishing to use, 5 | # modify, copy, or redistribute it subject to the terms and conditions of 6 | # the GNU General Public License v.2, or (at your option) any later version. 7 | # This program is distributed in the hope that it will be useful, but WITHOUT 8 | # ANY WARRANTY expressed or implied, including the implied warranties of 9 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General 10 | # Public License for more details. You should have received a copy of the 11 | # GNU General Public License along with this program; if not, write to the 12 | # Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 13 | # 02110-1301, USA. Any Red Hat trademarks that are incorporated in the 14 | # source code or documentation are not subject to the GNU General Public 15 | # License and may only be used or replicated with the express permission of 16 | # Red Hat, Inc. 17 | # 18 | # Red Hat Author(s): Vratislav Podzimek 19 | # 20 | """Rocks Rolls Category Module""" 21 | 22 | N_ = lambda x: x 23 | 24 | from pyanaconda.ui.categories import SpokeCategory 25 | 26 | __all__ = ["RocksRollsCategory"] 27 | 28 | class RocksRollsCategory(SpokeCategory): 29 | """ 30 | Class for the Rocks Rolls category. Category groups related spokes 31 | together. Both logically and visually (creates a box on a hub). It 32 | references a class of the hub it is supposed to be placed on. On the 33 | other hand spokes reference a class of the category they should be 34 | included in. 35 | 36 | """ 37 | 38 | displayOnHubGUI = "SummaryHub" 39 | displayOnHubTUI = "SummaryHub" 40 | title = N_("ROCKS CLUSTER CONFIG") 41 | -------------------------------------------------------------------------------- /src/anaconda-rocks/updates/org_rocks_rolls/categories/__init__.py: -------------------------------------------------------------------------------- 1 | import RocksRolls 2 | -------------------------------------------------------------------------------- /src/anaconda-rocks/updates/org_rocks_rolls/gui/__init__.py: -------------------------------------------------------------------------------- 1 | """ 2 | We need org_rocks_rolls/gui to be a package so that relative imports 3 | work. 4 | 5 | """ 6 | 7 | import spokes 8 | import categories 9 | -------------------------------------------------------------------------------- /src/anaconda-rocks/updates/org_rocks_rolls/gui/spokes/__init__.py: -------------------------------------------------------------------------------- 1 | import rocks_rolls 2 | import rocks_info 3 | import rocks_private 4 | -------------------------------------------------------------------------------- /src/anaconda-rocks/updates/org_rocks_rolls/ks/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rocksclusters/kernel/31e305619dff8eb32fee5d57ba3ca9eb68add5d3/src/anaconda-rocks/updates/org_rocks_rolls/ks/__init__.py -------------------------------------------------------------------------------- /src/anaconda-rocks/version.mk: -------------------------------------------------------------------------------- 1 | NAME = anaconda-rocks 2 | PKGROOT = /usr/share/lorax 3 | RELEASE = 1 4 | RPM.FILES = "$(PKGROOT)/*" 5 | RPM.EXTRAS="%define _python_bytecompile_errors_terminate_build 0" 6 | -------------------------------------------------------------------------------- /src/fastcgi/version.mk: -------------------------------------------------------------------------------- 1 | NAME = foundation-fcgi 2 | TARNAME = fcgi 3 | PKGROOT = /opt/rocks/fcgi 4 | VERSION = 2.4.0 5 | RELEASE = 0 6 | RPM.FILES = /opt/rocks/fcgi 7 | 8 | -------------------------------------------------------------------------------- /src/foundation-pysqlite/pysqlite.mk: -------------------------------------------------------------------------------- 1 | # --------------------------------------------------- -*- Makefile -*- -- 2 | # $Id: numpy.mk,v 1.13 2012/11/27 00:48:36 phil Exp $ 3 | # 4 | # @Copyright@ 5 | # 6 | # Rocks(r) 7 | # www.rocksclusters.org 8 | # version 6.2 (SideWinder) 9 | # version 7.0 (Manzanita) 10 | # 11 | # Copyright (c) 2000 - 2017 The Regents of the University of California. 12 | # All rights reserved. 13 | # 14 | # Redistribution and use in source and binary forms, with or without 15 | # modification, are permitted provided that the following conditions are 16 | # met: 17 | # 18 | # 1. Redistributions of source code must retain the above copyright 19 | # notice, this list of conditions and the following disclaimer. 20 | # 21 | # 2. Redistributions in binary form must reproduce the above copyright 22 | # notice unmodified and in its entirety, this list of conditions and the 23 | # following disclaimer in the documentation and/or other materials provided 24 | # with the distribution. 25 | # 26 | # 3. All advertising and press materials, printed or electronic, mentioning 27 | # features or use of this software must display the following acknowledgement: 28 | # 29 | # "This product includes software developed by the Rocks(r) 30 | # Cluster Group at the San Diego Supercomputer Center at the 31 | # University of California, San Diego and its contributors." 32 | # 33 | # 4. Except as permitted for the purposes of acknowledgment in paragraph 3, 34 | # neither the name or logo of this software nor the names of its 35 | # authors may be used to endorse or promote products derived from this 36 | # software without specific prior written permission. The name of the 37 | # software includes the following terms, and any derivatives thereof: 38 | # "Rocks", "Rocks Clusters", and "Avalanche Installer". For licensing of 39 | # the associated name, interested parties should contact Technology 40 | # Transfer & Intellectual Property Services, University of California, 41 | # San Diego, 9500 Gilman Drive, Mail Code 0910, La Jolla, CA 92093-0910, 42 | # Ph: (858) 534-5815, FAX: (858) 534-7345, E-MAIL:invent@ucsd.edu 43 | # 44 | # THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' 45 | # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, 46 | # THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 47 | # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS 48 | # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 49 | # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 50 | # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR 51 | # BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 52 | # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 53 | # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN 54 | # IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 55 | # 56 | # @Copyright@ 57 | # 58 | # 59 | 60 | 61 | build:: 62 | gunzip -c pysqlite-$(VERSION).tar.gz | $(TAR) -xf - 63 | cp setup.cfg pysqlite-$(VERSION) 64 | ( \ 65 | cd pysqlite-$(VERSION); \ 66 | $(PY.PATH) setup.py build; \ 67 | ) 68 | 69 | install:: 70 | ( \ 71 | cd pysqlite-$(VERSION); \ 72 | $(PY.PATH) setup.py install --root=$(ROOT); \ 73 | ) 74 | 75 | 76 | clean:: 77 | rm -rf pysqlite-$(VERSION) 78 | -------------------------------------------------------------------------------- /src/foundation-pysqlite/setup.cfg: -------------------------------------------------------------------------------- 1 | [build_ext] 2 | #define= 3 | include_dirs=/opt/sqlite/include 4 | library_dirs=/opt/sqlite/lib 5 | libraries=sqlite3 6 | define=SQLITE_OMIT_LOAD_EXTENSION 7 | -------------------------------------------------------------------------------- /src/foundation-pysqlite/version.mk: -------------------------------------------------------------------------------- 1 | NAME = foundation-pysqlite 2 | VERSION = 2.6.3 3 | RELEASE = 1 4 | RPM.FILES = \ 5 | /opt/rocks/lib/python2*/site-packages/pysqlite* \\n \ 6 | /opt/rocks/pysqlite2-doc 7 | 8 | -------------------------------------------------------------------------------- /src/kernel.org/kernel.spec.in: -------------------------------------------------------------------------------- 1 | %if %{with_extension} 2 | %define kernelversion %{version}-%{release}%{kernelextension} 3 | %else 4 | %define kernelversion %{version}-%{release} 5 | %endif 6 | 7 | 8 | Summary: The Linux Kernel 9 | Name: @KERNELNAME@ 10 | Version: @VERSION@ 11 | Release: @RELEASE@ 12 | License: GPL 13 | Group: System Environment/Kernel 14 | Vendor: The Linux Community 15 | URL: http://www.kernel.org 16 | Source0: linux-%{version}.tar.gz 17 | Source1: .config 18 | BuildRoot: /var/tmp/%{name}-buildroot 19 | Requires: kudzu 20 | Requires: mkinitrd 21 | 22 | %description 23 | The Linux Kernel, the operating system core itself 24 | 25 | 26 | %package devel 27 | Summary: Development package for building kernel modules to match the kernel. 28 | Group: System Environment/Kernel 29 | 30 | %description devel 31 | This package provides kernel headers and makefiles sufficient to build modules 32 | against the kernel package. 33 | 34 | 35 | %prep 36 | %setup -q -n linux-%{version} 37 | cp %{SOURCE1} .config 38 | 39 | %if %{with_extension} 40 | echo -%{release}%{kernelextension} > localversion 41 | %else 42 | echo -%{release} > localversion 43 | %endif 44 | 45 | 46 | %build 47 | make oldconfig 48 | make 49 | 50 | 51 | %install 52 | mkdir -p $RPM_BUILD_ROOT/lib 53 | make INSTALL_MOD_PATH=$RPM_BUILD_ROOT modules_install 54 | 55 | mkdir -p $RPM_BUILD_ROOT/boot 56 | make INSTALL_PATH=$RPM_BUILD_ROOT/boot install 57 | rm -f $RPM_BUILD_ROOT/boot/*.old 58 | rm -f $RPM_BUILD_ROOT/boot/System.map 59 | rm -f $RPM_BUILD_ROOT/boot/vmlinuz 60 | 61 | cp .config $RPM_BUILD_ROOT/boot/config-%{kernelversion} 62 | 63 | # 64 | # for the 'devel' package 65 | # 66 | DEVELVERSION=%{version}-%{release} 67 | 68 | %if %{with_extension} 69 | DEVELVERSION=$DEVELVERSION-%{kernelextension} 70 | %endif 71 | 72 | DEVELVERSION=$DEVELVERSION-%{_arch} 73 | 74 | rm -f $RPM_BUILD_ROOT/lib/modules/%{kernelversion}/build 75 | rm -f $RPM_BUILD_ROOT/lib/modules/%{kernelversion}/source 76 | 77 | ( 78 | cd $RPM_BUILD_ROOT/lib/modules/%{kernelversion} ; 79 | ln -s /usr/src/kernels/$DEVELVERSION build ; 80 | ln -s build source 81 | ) 82 | 83 | make clean 84 | make modules_prepare 85 | 86 | mkdir -p $RPM_BUILD_ROOT/usr/src/kernels/$DEVELVERSION 87 | cp -r . $RPM_BUILD_ROOT/usr/src/kernels/$DEVELVERSION 88 | 89 | 90 | ## 91 | ## files 92 | ## 93 | %files 94 | /boot 95 | /lib 96 | 97 | %files devel 98 | /usr 99 | 100 | 101 | ## 102 | ## post 103 | ## 104 | %post 105 | [ -x /usr/sbin/module_upgrade ] && /usr/sbin/module_upgrade 106 | [ -x /sbin/new-kernel-pkg ] && /sbin/new-kernel-pkg --package %{name} \ 107 | --mkinitrd --depmod --install %{kernelversion} 108 | 109 | 110 | ## 111 | ## clean 112 | ## 113 | %clean 114 | rm -rf $RPM_BUILD_ROOT 115 | 116 | -------------------------------------------------------------------------------- /src/kernel.org/version.mk: -------------------------------------------------------------------------------- 1 | NAME = kernel 2 | RELEASE = 1 3 | 4 | VERSION = 2.6.32.3 5 | PAE = 0 6 | XEN = 0 7 | 8 | -------------------------------------------------------------------------------- /src/keyutils/build: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | echo rpm -Uvh $ROCKS_REBUILD_SRPM 4 | rpm -Uvh $ROCKS_REBUILD_SRPM 5 | 6 | export SPECFILE=keyutils.spec 7 | 8 | awk ' /NO_ARLIB=1/ { \ 9 | next; \ 10 | } \ 11 | /^%{usrlibdir}\/libkeyutils.so/ {\ 12 | printf("\%{usrlibdir}/libkeyutils.a\n"); 13 | } \ 14 | { print $0 } ' $REDHATSPECS/$SPECFILE > /tmp/$SPECFILE 15 | 16 | rpmbuild -bb --define="dist .el5" /tmp/$SPECFILE 17 | 18 | -------------------------------------------------------------------------------- /src/keyutils/version.mk: -------------------------------------------------------------------------------- 1 | NAME = keyutils 2 | VERSION = 1.2 3 | RELEASE = 1 4 | 5 | MAKE.iscontrib = 1 6 | -------------------------------------------------------------------------------- /src/lighttpd/conf/lighttpd.conf: -------------------------------------------------------------------------------- 1 | server.port = 80 2 | server.document-root = "/" 3 | server.pid-file = "/var/run/lighttpd.pid" 4 | accesslog.filename = "/tmp/httpd.log" 5 | server.errorlog-use-syslog = "enable" 6 | 7 | dir-listing.activate = "enable" 8 | 9 | server.modules = ( 10 | "mod_rewrite", 11 | "mod_cgi", 12 | "mod_fastcgi", 13 | "mod_accesslog" 14 | ) 15 | 16 | index-file.names = ( "/index.cgi" ) 17 | 18 | cgi.assign = ( 19 | ".cgi" => "", 20 | ".py" => "" 21 | ) 22 | 23 | mimetype.assign = ( 24 | ".pdf" => "application/pdf", 25 | ".sig" => "application/pgp-signature", 26 | ".spl" => "application/futuresplash", 27 | ".class" => "application/octet-stream", 28 | ".ps" => "application/postscript", 29 | ".torrent" => "application/x-bittorrent", 30 | ".dvi" => "application/x-dvi", 31 | ".gz" => "application/x-gzip", 32 | ".pac" => "application/x-ns-proxy-autoconfig", 33 | ".swf" => "application/x-shockwave-flash", 34 | ".tar.gz" => "application/x-tgz", 35 | ".tgz" => "application/x-tgz", 36 | ".tar" => "application/x-tar", 37 | ".zip" => "application/zip", 38 | ".mp3" => "audio/mpeg", 39 | ".m3u" => "audio/x-mpegurl", 40 | ".wma" => "audio/x-ms-wma", 41 | ".wax" => "audio/x-ms-wax", 42 | ".ogg" => "application/ogg", 43 | ".wav" => "audio/x-wav", 44 | ".gif" => "image/gif", 45 | ".jpg" => "image/jpeg", 46 | ".jpeg" => "image/jpeg", 47 | ".png" => "image/png", 48 | ".xbm" => "image/x-xbitmap", 49 | ".xpm" => "image/x-xpixmap", 50 | ".xwd" => "image/x-xwindowdump", 51 | ".css" => "text/css", 52 | ".html" => "text/html", 53 | ".htm" => "text/html", 54 | ".js" => "text/javascript", 55 | ".asc" => "text/plain", 56 | ".c" => "text/plain", 57 | ".cpp" => "text/plain", 58 | ".log" => "text/plain", 59 | ".conf" => "text/plain", 60 | ".text" => "text/plain", 61 | ".txt" => "text/plain", 62 | ".dtd" => "text/xml", 63 | ".xml" => "text/xml", 64 | ".mpeg" => "video/mpeg", 65 | ".mpg" => "video/mpeg", 66 | ".mov" => "video/quicktime", 67 | ".qt" => "video/quicktime", 68 | ".avi" => "video/x-msvideo", 69 | ".asf" => "video/x-ms-asf", 70 | ".asx" => "video/x-ms-asf", 71 | ".wmv" => "video/x-ms-wmv", 72 | ".bz2" => "application/x-bzip", 73 | ".tbz" => "application/x-bzip-compressed-tar", 74 | ".tar.bz2" => "application/x-bzip-compressed-tar", 75 | "" => "application/octet-stream" 76 | ) 77 | 78 | $HTTP["host"] == "127.0.0.1" { 79 | url.rewrite = ( "^/install/(.+)$" => 80 | "/tracker/tracker-client?filename=/install/$1") 81 | } 82 | 83 | fastcgi.debug = 0 84 | 85 | fastcgi.server = ( "/tracker/tracker-client" => 86 | (( 87 | "socket" => "/tmp/fastcgi.socket", 88 | "bin-path" => "/tracker/tracker-client" 89 | )) 90 | ) 91 | -------------------------------------------------------------------------------- /src/lighttpd/version.mk: -------------------------------------------------------------------------------- 1 | NAME = lighttpd 2 | VERSION = 1.4.28 3 | RELEASE = 0 4 | RPM.FILES = /lighttpd 5 | -------------------------------------------------------------------------------- /src/opt-atk/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # $Id: Makefile,v 1.3 2012/11/27 00:49:07 phil Exp $ 3 | # 4 | # @Copyright@ 5 | # 6 | # Rocks(r) 7 | # www.rocksclusters.org 8 | # version 6.2 (SideWinder) 9 | # version 7.0 (Manzanita) 10 | # 11 | # Copyright (c) 2000 - 2017 The Regents of the University of California. 12 | # All rights reserved. 13 | # 14 | # Redistribution and use in source and binary forms, with or without 15 | # modification, are permitted provided that the following conditions are 16 | # met: 17 | # 18 | # 1. Redistributions of source code must retain the above copyright 19 | # notice, this list of conditions and the following disclaimer. 20 | # 21 | # 2. Redistributions in binary form must reproduce the above copyright 22 | # notice unmodified and in its entirety, this list of conditions and the 23 | # following disclaimer in the documentation and/or other materials provided 24 | # with the distribution. 25 | # 26 | # 3. All advertising and press materials, printed or electronic, mentioning 27 | # features or use of this software must display the following acknowledgement: 28 | # 29 | # "This product includes software developed by the Rocks(r) 30 | # Cluster Group at the San Diego Supercomputer Center at the 31 | # University of California, San Diego and its contributors." 32 | # 33 | # 4. Except as permitted for the purposes of acknowledgment in paragraph 3, 34 | # neither the name or logo of this software nor the names of its 35 | # authors may be used to endorse or promote products derived from this 36 | # software without specific prior written permission. The name of the 37 | # software includes the following terms, and any derivatives thereof: 38 | # "Rocks", "Rocks Clusters", and "Avalanche Installer". For licensing of 39 | # the associated name, interested parties should contact Technology 40 | # Transfer & Intellectual Property Services, University of California, 41 | # San Diego, 9500 Gilman Drive, Mail Code 0910, La Jolla, CA 92093-0910, 42 | # Ph: (858) 534-5815, FAX: (858) 534-7345, E-MAIL:invent@ucsd.edu 43 | # 44 | # THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' 45 | # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, 46 | # THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 47 | # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS 48 | # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 49 | # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 50 | # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR 51 | # BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 52 | # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 53 | # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN 54 | # IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 55 | # 56 | # @Copyright@ 57 | # 58 | # 59 | # 60 | # 61 | 62 | REDHAT.ROOT = $(CURDIR)/../../ 63 | -include $(ROCKSROOT)/etc/Rules.mk 64 | include Rules.mk 65 | 66 | 67 | build: 68 | unxz -c $(TARFILE) | $(TAR) xvf - 69 | ( \ 70 | cd $(SUBDIR) ; \ 71 | ./configure --prefix=$(PKGROOT) ; \ 72 | $(MAKE) ; \ 73 | ) 74 | 75 | install:: 76 | mkdir -p $(ROOT)/$(PKGROOT) 77 | ( \ 78 | cd $(SUBDIR); \ 79 | $(MAKE) prefix=$(ROOT)/$(PKGROOT) install; \ 80 | ) 81 | ( \ 82 | for f in `find $(ROOT) -name '*py'`; do \ 83 | sed -i -e 's#$(ROOT)##g' $$f; \ 84 | done \ 85 | ) 86 | 87 | clean:: 88 | rm -rf $(SUBDIR) 89 | rm -f $(NAME).spec.in 90 | 91 | -------------------------------------------------------------------------------- /src/opt-atk/version.mk: -------------------------------------------------------------------------------- 1 | NAME = opt-atk 2 | PKGROOT = /opt/devel 3 | VERSION = 2.16.0 4 | RELEASE = 0 5 | SUBDIR = atk-$(VERSION) 6 | TARFILE = $(SUBDIR).tar.xz 7 | RPM.FILES = "$(PKGROOT)/include/*\\n$(PKGROOT)/lib/*\\n$(PKGROOT)/share/*" 8 | -------------------------------------------------------------------------------- /src/opt-devel-module/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # $Id: Makefile,v 1.2 2012/11/27 00:49:01 phil Exp $ 3 | # 4 | # @Copyright@ 5 | # 6 | # Rocks(r) 7 | # www.rocksclusters.org 8 | # version 6.2 (SideWinder) 9 | # version 7.0 (Manzanita) 10 | # 11 | # Copyright (c) 2000 - 2017 The Regents of the University of California. 12 | # All rights reserved. 13 | # 14 | # Redistribution and use in source and binary forms, with or without 15 | # modification, are permitted provided that the following conditions are 16 | # met: 17 | # 18 | # 1. Redistributions of source code must retain the above copyright 19 | # notice, this list of conditions and the following disclaimer. 20 | # 21 | # 2. Redistributions in binary form must reproduce the above copyright 22 | # notice unmodified and in its entirety, this list of conditions and the 23 | # following disclaimer in the documentation and/or other materials provided 24 | # with the distribution. 25 | # 26 | # 3. All advertising and press materials, printed or electronic, mentioning 27 | # features or use of this software must display the following acknowledgement: 28 | # 29 | # "This product includes software developed by the Rocks(r) 30 | # Cluster Group at the San Diego Supercomputer Center at the 31 | # University of California, San Diego and its contributors." 32 | # 33 | # 4. Except as permitted for the purposes of acknowledgment in paragraph 3, 34 | # neither the name or logo of this software nor the names of its 35 | # authors may be used to endorse or promote products derived from this 36 | # software without specific prior written permission. The name of the 37 | # software includes the following terms, and any derivatives thereof: 38 | # "Rocks", "Rocks Clusters", and "Avalanche Installer". For licensing of 39 | # the associated name, interested parties should contact Technology 40 | # Transfer & Intellectual Property Services, University of California, 41 | # San Diego, 9500 Gilman Drive, Mail Code 0910, La Jolla, CA 92093-0910, 42 | # Ph: (858) 534-5815, FAX: (858) 534-7345, E-MAIL:invent@ucsd.edu 43 | # 44 | # THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' 45 | # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, 46 | # THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 47 | # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS 48 | # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 49 | # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 50 | # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR 51 | # BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 52 | # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 53 | # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN 54 | # IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 55 | # 56 | # @Copyright@ 57 | # 58 | # 59 | # $Log: Makefile,v $ 60 | # Revision 1.2 2012/11/27 00:49:01 phil 61 | # Copyright Storm for Emerald Boa 62 | # 63 | # Revision 1.1 2012/09/30 21:58:56 phil 64 | # Update openmpi to 1.6.2. 65 | # Create Modules for ethernet and IB 66 | # Add IB support - packages, openmpi configuration, udev rules 67 | # 68 | 69 | PKGROOT = /usr/share/Modules/modulefiles 70 | REDHAT.ROOT = $(CURDIR)/../../ 71 | 72 | -include $(ROCKSROOT)/etc/Rules.mk 73 | include Rules.mk 74 | 75 | MODULESFILES = opt-devel 76 | 77 | %: %.in 78 | $(SED) $(SEDSCRIPT) $^ > $@ 79 | 80 | build: $(MODULESFILES) 81 | 82 | install:: $(MODULESFILES) 83 | mkdir -p $(ROOT)/$(PKGROOT) 84 | install -m 755 $(MODULESFILES) $(ROOT)/$(PKGROOT) 85 | 86 | clean:: 87 | rm -rf $(NAME).spec.in 88 | rm -rf $(MODULESFILES) 89 | 90 | -------------------------------------------------------------------------------- /src/opt-devel-module/opt-devel.in: -------------------------------------------------------------------------------- 1 | #%Module1.0##################################################################### 2 | ## 3 | ## opt-devel modulefile 4 | ## 5 | ## modulefiles/ 6 | ## 7 | proc ModulesHelp { } { 8 | global opt-devel-version 9 | 10 | puts stderr "\t Use new/updated software in opt-devel" 11 | puts stderr "\n\tVersion $opt-devel-version\n" 12 | } 13 | 14 | module-whatis "use opt-devel tree for updated tools like glade,gtk+, and others" 15 | 16 | # for Tcl script use only 17 | set opt-devel-version @VERSION@ 18 | 19 | set develHome /opt/devel 20 | prepend-path PATH $develHome/bin 21 | prepend-path LD_LIBRARY_PATH $develHome/lib 22 | prepend-path PKG_CONFIG_PATH $develHome/lib/pkgconfig 23 | 24 | -------------------------------------------------------------------------------- /src/opt-devel-module/version.mk: -------------------------------------------------------------------------------- 1 | NAME = opt-devel-module 2 | RELEASE = 1 3 | RPM.REQUIRES = environment-modules 4 | VERSION = 1 5 | RPM.FILES = "/usr/share/Modules/modulefiles/*" 6 | -------------------------------------------------------------------------------- /src/opt-glade/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # $Id: Makefile,v 1.3 2012/11/27 00:49:07 phil Exp $ 3 | # 4 | # @Copyright@ 5 | # 6 | # Rocks(r) 7 | # www.rocksclusters.org 8 | # version 6.2 (SideWinder) 9 | # version 7.0 (Manzanita) 10 | # 11 | # Copyright (c) 2000 - 2017 The Regents of the University of California. 12 | # All rights reserved. 13 | # 14 | # Redistribution and use in source and binary forms, with or without 15 | # modification, are permitted provided that the following conditions are 16 | # met: 17 | # 18 | # 1. Redistributions of source code must retain the above copyright 19 | # notice, this list of conditions and the following disclaimer. 20 | # 21 | # 2. Redistributions in binary form must reproduce the above copyright 22 | # notice unmodified and in its entirety, this list of conditions and the 23 | # following disclaimer in the documentation and/or other materials provided 24 | # with the distribution. 25 | # 26 | # 3. All advertising and press materials, printed or electronic, mentioning 27 | # features or use of this software must display the following acknowledgement: 28 | # 29 | # "This product includes software developed by the Rocks(r) 30 | # Cluster Group at the San Diego Supercomputer Center at the 31 | # University of California, San Diego and its contributors." 32 | # 33 | # 4. Except as permitted for the purposes of acknowledgment in paragraph 3, 34 | # neither the name or logo of this software nor the names of its 35 | # authors may be used to endorse or promote products derived from this 36 | # software without specific prior written permission. The name of the 37 | # software includes the following terms, and any derivatives thereof: 38 | # "Rocks", "Rocks Clusters", and "Avalanche Installer". For licensing of 39 | # the associated name, interested parties should contact Technology 40 | # Transfer & Intellectual Property Services, University of California, 41 | # San Diego, 9500 Gilman Drive, Mail Code 0910, La Jolla, CA 92093-0910, 42 | # Ph: (858) 534-5815, FAX: (858) 534-7345, E-MAIL:invent@ucsd.edu 43 | # 44 | # THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' 45 | # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, 46 | # THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 47 | # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS 48 | # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 49 | # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 50 | # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR 51 | # BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 52 | # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 53 | # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN 54 | # IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 55 | # 56 | # @Copyright@ 57 | # 58 | # 59 | # 60 | # 61 | 62 | REDHAT.ROOT = $(CURDIR)/../../ 63 | -include $(ROCKSROOT)/etc/Rules.mk 64 | include Rules.mk 65 | 66 | 67 | build: 68 | unxz -c $(TARFILE) | $(TAR) xvf - 69 | ( \ 70 | cd $(SUBDIR) ; \ 71 | module load opt-devel; \ 72 | ./configure --enable-glade-ui --prefix=$(PKGROOT) ; \ 73 | $(MAKE) ; \ 74 | ) 75 | 76 | install:: 77 | mkdir -p $(ROOT)/$(PKGROOT) 78 | ( \ 79 | cd $(SUBDIR); \ 80 | module load opt-devel; \ 81 | $(MAKE) DESTDIR=$(ROOT) install; \ 82 | ) 83 | 84 | clean:: 85 | rm -rf $(SUBDIR) 86 | rm -f $(NAME).spec.in 87 | 88 | -------------------------------------------------------------------------------- /src/opt-glade/version.mk: -------------------------------------------------------------------------------- 1 | NAME = opt-glade 2 | PKGROOT = /opt/devel 3 | VERSION = 3.19.0 4 | RELEASE = 0 5 | SUBDIR = glade-$(VERSION) 6 | TARFILE = $(SUBDIR).tar.xz 7 | RPM.REQUIRES = opt-gtk+,opt-devel-module 8 | RPM.FILES = "$(PKGROOT)/bin/*\\n$(PKGROOT)/include/*\\n$(PKGROOT)/lib/*\\n$(PKGROOT)/share/*" 9 | -------------------------------------------------------------------------------- /src/opt-glib2/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # $Id: Makefile,v 1.3 2012/11/27 00:49:07 phil Exp $ 3 | # 4 | # @Copyright@ 5 | # 6 | # Rocks(r) 7 | # www.rocksclusters.org 8 | # version 6.2 (SideWinder) 9 | # version 7.0 (Manzanita) 10 | # 11 | # Copyright (c) 2000 - 2017 The Regents of the University of California. 12 | # All rights reserved. 13 | # 14 | # Redistribution and use in source and binary forms, with or without 15 | # modification, are permitted provided that the following conditions are 16 | # met: 17 | # 18 | # 1. Redistributions of source code must retain the above copyright 19 | # notice, this list of conditions and the following disclaimer. 20 | # 21 | # 2. Redistributions in binary form must reproduce the above copyright 22 | # notice unmodified and in its entirety, this list of conditions and the 23 | # following disclaimer in the documentation and/or other materials provided 24 | # with the distribution. 25 | # 26 | # 3. All advertising and press materials, printed or electronic, mentioning 27 | # features or use of this software must display the following acknowledgement: 28 | # 29 | # "This product includes software developed by the Rocks(r) 30 | # Cluster Group at the San Diego Supercomputer Center at the 31 | # University of California, San Diego and its contributors." 32 | # 33 | # 4. Except as permitted for the purposes of acknowledgment in paragraph 3, 34 | # neither the name or logo of this software nor the names of its 35 | # authors may be used to endorse or promote products derived from this 36 | # software without specific prior written permission. The name of the 37 | # software includes the following terms, and any derivatives thereof: 38 | # "Rocks", "Rocks Clusters", and "Avalanche Installer". For licensing of 39 | # the associated name, interested parties should contact Technology 40 | # Transfer & Intellectual Property Services, University of California, 41 | # San Diego, 9500 Gilman Drive, Mail Code 0910, La Jolla, CA 92093-0910, 42 | # Ph: (858) 534-5815, FAX: (858) 534-7345, E-MAIL:invent@ucsd.edu 43 | # 44 | # THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' 45 | # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, 46 | # THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 47 | # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS 48 | # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 49 | # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 50 | # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR 51 | # BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 52 | # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 53 | # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN 54 | # IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 55 | # 56 | # @Copyright@ 57 | # 58 | # 59 | # 60 | # 61 | 62 | REDHAT.ROOT = $(CURDIR)/../../ 63 | -include $(ROCKSROOT)/etc/Rules.mk 64 | include Rules.mk 65 | 66 | 67 | build: 68 | unxz -c $(TARFILE) | $(TAR) xvf - 69 | ( \ 70 | cd $(SUBDIR) ; \ 71 | ./configure --prefix=$(PKGROOT) ; \ 72 | $(MAKE) ; \ 73 | ) 74 | 75 | install:: 76 | mkdir -p $(ROOT)/$(PKGROOT) 77 | ( \ 78 | cd $(SUBDIR); \ 79 | $(MAKE) prefix=$(ROOT)/$(PKGROOT) install; \ 80 | ) 81 | ( \ 82 | for f in `find $(ROOT) -name '*py'`; do \ 83 | sed -i -e 's#$(ROOT)##g' $$f; \ 84 | done \ 85 | ) 86 | 87 | clean:: 88 | rm -rf $(SUBDIR) 89 | rm -f $(NAME).spec.in 90 | 91 | -------------------------------------------------------------------------------- /src/opt-glib2/version.mk: -------------------------------------------------------------------------------- 1 | NAME = opt-glib2 2 | PKGROOT = /opt/devel 3 | VERSION = 2.44.1 4 | RELEASE = 0 5 | SUBDIR = glib-$(VERSION) 6 | TARFILE = $(SUBDIR).tar.xz 7 | RPM.REQUIRES = opt-devel-module 8 | RPM.FILES = "$(PKGROOT)/bin/*\\n$(PKGROOT)/include/*\\n$(PKGROOT)/lib/*\\n$(PKGROOT)/share/*" 9 | -------------------------------------------------------------------------------- /src/opt-gtk+/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # $Id: Makefile,v 1.3 2012/11/27 00:49:07 phil Exp $ 3 | # 4 | # @Copyright@ 5 | # 6 | # Rocks(r) 7 | # www.rocksclusters.org 8 | # version 6.2 (SideWinder) 9 | # version 7.0 (Manzanita) 10 | # 11 | # Copyright (c) 2000 - 2017 The Regents of the University of California. 12 | # All rights reserved. 13 | # 14 | # Redistribution and use in source and binary forms, with or without 15 | # modification, are permitted provided that the following conditions are 16 | # met: 17 | # 18 | # 1. Redistributions of source code must retain the above copyright 19 | # notice, this list of conditions and the following disclaimer. 20 | # 21 | # 2. Redistributions in binary form must reproduce the above copyright 22 | # notice unmodified and in its entirety, this list of conditions and the 23 | # following disclaimer in the documentation and/or other materials provided 24 | # with the distribution. 25 | # 26 | # 3. All advertising and press materials, printed or electronic, mentioning 27 | # features or use of this software must display the following acknowledgement: 28 | # 29 | # "This product includes software developed by the Rocks(r) 30 | # Cluster Group at the San Diego Supercomputer Center at the 31 | # University of California, San Diego and its contributors." 32 | # 33 | # 4. Except as permitted for the purposes of acknowledgment in paragraph 3, 34 | # neither the name or logo of this software nor the names of its 35 | # authors may be used to endorse or promote products derived from this 36 | # software without specific prior written permission. The name of the 37 | # software includes the following terms, and any derivatives thereof: 38 | # "Rocks", "Rocks Clusters", and "Avalanche Installer". For licensing of 39 | # the associated name, interested parties should contact Technology 40 | # Transfer & Intellectual Property Services, University of California, 41 | # San Diego, 9500 Gilman Drive, Mail Code 0910, La Jolla, CA 92093-0910, 42 | # Ph: (858) 534-5815, FAX: (858) 534-7345, E-MAIL:invent@ucsd.edu 43 | # 44 | # THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' 45 | # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, 46 | # THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 47 | # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS 48 | # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 49 | # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 50 | # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR 51 | # BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 52 | # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 53 | # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN 54 | # IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 55 | # 56 | # @Copyright@ 57 | # 58 | # 59 | # 60 | # 61 | 62 | REDHAT.ROOT = $(CURDIR)/../../ 63 | -include $(ROCKSROOT)/etc/Rules.mk 64 | include Rules.mk 65 | 66 | 67 | build: 68 | unxz -c $(TARFILE) | $(TAR) xvf - 69 | ( \ 70 | cd $(SUBDIR) ; \ 71 | . /etc/profile.d/modules.sh; \ 72 | module load opt-devel; \ 73 | ./configure --prefix=$(PKGROOT) ; \ 74 | $(MAKE) ; \ 75 | ) 76 | 77 | install:: 78 | mkdir -p $(ROOT)/$(PKGROOT) 79 | ( \ 80 | cd $(SUBDIR); \ 81 | . /etc/profile.d/modules.sh; \ 82 | module load opt-devel; \ 83 | $(MAKE) prefix=$(ROOT)/$(PKGROOT) install; \ 84 | ) 85 | ( \ 86 | for f in `find $(ROOT) -name '*py'`; do \ 87 | sed -i -e 's#$(ROOT)##g' $$f; \ 88 | done \ 89 | ) 90 | 91 | clean:: 92 | rm -rf $(SUBDIR) 93 | rm -f $(NAME).spec.in 94 | 95 | -------------------------------------------------------------------------------- /src/opt-gtk+/version.mk: -------------------------------------------------------------------------------- 1 | NAME = opt-gtk+ 2 | PKGROOT = /opt/devel 3 | VERSION = 3.16.7 4 | RELEASE = 0 5 | SUBDIR = gtk+-$(VERSION) 6 | TARFILE = $(SUBDIR).tar.xz 7 | RPM.REQUIRES = opt-atk,opt-glib2,opt-devel-module 8 | RPM.FILES = "$(PKGROOT)/bin/*\\n$(PKGROOT)/etc/*\\n$(PKGROOT)/include/*\\n$(PKGROOT)/lib/*\\n$(PKGROOT)/share/*" 9 | -------------------------------------------------------------------------------- /src/rocks-boot-7/README: -------------------------------------------------------------------------------- 1 | Rocks-boot-7 uses lorax to do most of the work of creating product.img initrd 2 | and the live file system used by anaconda for installation. 3 | 4 | rocks-boot-7 is built LAST when building the kernel roll. All other kernel roll 5 | rpms must already be compiled. 6 | 7 | Lorax has an extensive templating system to add packages to bootable media. Typically, close to 700 packages are installed then unneeded items are removed to build a smaller LiveOS image. Our goal is to use as much of the stock Lorax-based install as possible, while adding Rocks-required packages. 8 | 9 | Where This build finds packages. 10 | - Rolls installed in the build system. Required rolls are core and OS. 11 | -- Typically an updates roll is also added to get an updated kernel RPM 12 | - The RPMS directory of the kernel roll itself. 13 | -- This enables various Rocks-created packages to be installed 14 | 15 | Where are anaconda changes? 16 | -- the anaconda-rocks rpm defined in this roll should handle the overlay 17 | of anaconda files (using product.img). 18 | -------------------------------------------------------------------------------- /src/rocks-boot-7/version.mk: -------------------------------------------------------------------------------- 1 | NAME = rocks-boot 2 | PKGROOT = /boot/kickstart/default 3 | RELEASE = 1 4 | RPM.PREFIX = $(PKGROOT) 5 | INSTALLERISO = rocks-installer-$(VERSION.MAJOR)-$(VERSION.MINOR).iso 6 | 7 | ISFINAL = --isfinal 8 | ifdef ISFINAL 9 | CENTRAL=central-$(shell echo $(VERSION) | tr . -)-x86-64.rocksclusters.org 10 | else 11 | CENTRAL=beta7.rocksclusters.org 12 | endif 13 | RPM.DESCRIPTION = rocks-boot installer media with central=$(CENTRAL) 14 | -------------------------------------------------------------------------------- /src/rocks-boot-pxe/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # $Id: Makefile,v 1.3 2012/11/27 00:49:07 phil Exp $ 3 | # 4 | # @Copyright@ 5 | # 6 | # Rocks(r) 7 | # www.rocksclusters.org 8 | # version 6.2 (SideWinder) 9 | # version 7.0 (Manzanita) 10 | # 11 | # Copyright (c) 2000 - 2017 The Regents of the University of California. 12 | # All rights reserved. 13 | # 14 | # Redistribution and use in source and binary forms, with or without 15 | # modification, are permitted provided that the following conditions are 16 | # met: 17 | # 18 | # 1. Redistributions of source code must retain the above copyright 19 | # notice, this list of conditions and the following disclaimer. 20 | # 21 | # 2. Redistributions in binary form must reproduce the above copyright 22 | # notice unmodified and in its entirety, this list of conditions and the 23 | # following disclaimer in the documentation and/or other materials provided 24 | # with the distribution. 25 | # 26 | # 3. All advertising and press materials, printed or electronic, mentioning 27 | # features or use of this software must display the following acknowledgement: 28 | # 29 | # "This product includes software developed by the Rocks(r) 30 | # Cluster Group at the San Diego Supercomputer Center at the 31 | # University of California, San Diego and its contributors." 32 | # 33 | # 4. Except as permitted for the purposes of acknowledgment in paragraph 3, 34 | # neither the name or logo of this software nor the names of its 35 | # authors may be used to endorse or promote products derived from this 36 | # software without specific prior written permission. The name of the 37 | # software includes the following terms, and any derivatives thereof: 38 | # "Rocks", "Rocks Clusters", and "Avalanche Installer". For licensing of 39 | # the associated name, interested parties should contact Technology 40 | # Transfer & Intellectual Property Services, University of California, 41 | # San Diego, 9500 Gilman Drive, Mail Code 0910, La Jolla, CA 92093-0910, 42 | # Ph: (858) 534-5815, FAX: (858) 534-7345, E-MAIL:invent@ucsd.edu 43 | # 44 | # THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' 45 | # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, 46 | # THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 47 | # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS 48 | # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 49 | # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 50 | # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR 51 | # BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 52 | # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 53 | # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN 54 | # IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 55 | # 56 | # @Copyright@ 57 | # 58 | # 59 | # 60 | # 61 | 62 | REDHAT.ROOT = $(CURDIR)/../../ 63 | -include $(ROCKSROOT)/etc/Rules.mk 64 | include Rules.mk 65 | 66 | TMPBUILD = $(CURDIR)/tmpbuild 67 | IMGSRCPATH = boot/kickstart/default/images/pxeboot 68 | IMAGES = vmlinuz initrd.img 69 | build: 70 | make -C $(REDHAT.ROOT) createlocalrepo 71 | - mkdir $(TMPBUILD) 72 | yum -c $(REDHAT.ROOT)/yum.conf -y --disablerepo='*' --enablerepo=kernel-roll --installroot=$(TMPBUILD) install rocks-boot 73 | 74 | install:: 75 | mkdir -p $(ROOT)/$(PKGROOT) 76 | (for i in $(IMAGES); do \ 77 | $(INSTALL) $(TMPBUILD)/$(IMGSRCPATH)/$$i $(ROOT)/$(PKGROOT)/$$i-$(VERSION)-$(ARCH); done) 78 | 79 | clean:: 80 | - /bin/rm -rf $(TMPBUILD) 81 | 82 | -------------------------------------------------------------------------------- /src/rocks-boot-pxe/version.mk: -------------------------------------------------------------------------------- 1 | NAME = rocks-boot-pxe 2 | PKGROOT = /tftpboot/pxelinux 3 | RELEASE = 2 4 | RPM.FILES = $(PKGROOT)/* 5 | RPM.DESCRIPTION = Initial Ramdisk and Linux Kernel For Rocks-based PXE-booting nodes. Extracted from the rocks-boot rpm and placed in /tftpboot/pxelinux 6 | -------------------------------------------------------------------------------- /src/rocks-boot/README: -------------------------------------------------------------------------------- 1 | The following is for RedHat/CentOS 6 2 | 3 | There are 4 file system images that are used during installation 4 | 5 | 1. initrd 6 | This is the standard initial ramdisk. Rocks brings up 7 | lighttpd, rock-tracker 8 | 9 | 2. updates.img - this is created by rocks in the base roll in the updates.img. 10 | This brings a large set of tools to create kickstart files 11 | 12 | 3. product.img - this has small number of python files that contain rocks 13 | patches to anaconda. 14 | 15 | 4. install.img - this is is created by the anaconda buildinstall script. The contents of this image are defined by each particular version of anaconda 16 | 17 | 18 | Dissecting loader. 19 | Loader is the compiled program the begins execution only with files in initrd. 20 | It is charged with determining where the other img files are located (network, cd, harddisk), and the type installation to start It finds and loads the img files and generally "merges" some elements of the file system. 21 | 22 | updates.img is mounted on /tmp/updates 23 | install.img is mounted on /mnt/runtime (in loader, this is called stage2) 24 | product.img contents are compied to /tmp/product 25 | 26 | Once the images are mounted the following directory manipulations 27 | (see loader.c) 28 | /usr, /lib, /lib64 a retargeted to /mnt/runtime/[usr,lib,lib64] 29 | this means that unloaded libs in initrd become unavailable. 30 | --> may need some libs in both initrd and install.img 31 | 32 | contents of /tmp/mnt/runtime/[etc,var] are copied to the existing 33 | ones (from initrd) 34 | 35 | finally, /mnt/runtime/etc/selinux are copied to /etc/selinux. 36 | if configured, selinux is started. 37 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/ChangeLog: -------------------------------------------------------------------------------- 1 | Version 0.9.9 2 | 03 October 2007 -- Jon Masters 3 | -- Remove "-U" option from mkisofs invocation (produces broken ISOs). 4 | -- Implement support for post-RHEL5.1 RPM-based Driver Update Disks. 5 | 6 | Version 0.9.8 7 | 30 January 2007 8 | -- Add "-U" option to mkisofs invocation 9 | 10 | Version 0.9.7 11 | 29 January 2007 12 | -- Added generation of modules.alias 13 | -- Updated examples to match RHEL5 GA 14 | -- Removed sk98lin example (obsoleted by skge and sky2) 15 | 16 | Version 0.9.6 17 | 17 January 2007 18 | -- Internal development version 19 | 20 | Version 0.9.5 21 | 4 August 2005 22 | -- Updated example sources to match RHEL4 U1 (except sk98lin) 23 | 24 | Version 0.9.4 25 | 13 May 2005 26 | -- Added facility for including sources on disk image 27 | 28 | Version 0.9.3 29 | 7 April 2005 30 | -- Improved support for building multiple modules within a 31 | driver subdirectory in order to avoid symbol versioning problems 32 | -- Reorganized the directory structure to utilize above support 33 | for ata_piix and libata 34 | -- Removed include subdirectory (should not be necessary due to 35 | support above) 36 | -- Changed name of "drivers" file to "subdirs" (since directories 37 | now may contain multiple drivers) 38 | -- Added 'strip -g' to module post-build 39 | 40 | Version 0.9.2 41 | 18 February 2005 42 | -- Change base Makefile to read kernel versions from external file 43 | -- Change base Makefile to read driver list from external file 44 | -- Add TODO file 45 | 46 | Version 0.9.1 47 | 11 January 2005 48 | -- Build.rules handles drivers w/ multi-level directories 49 | -- Changed sample KVERSIONS value to match current RHEL4 50 | -- Cleaned-up #include handling in driver Makefiles e.g. -I$(PWD) 51 | -- Added sk98lin and cciss examples 52 | 53 | Version 0.9.0 54 | 20 December 2004 55 | -- Defaulted KVERSIONS to match running kernel 56 | -- Added COPYING file 57 | 58 | Version 0.8.1 59 | 2 December 2004 60 | -- Added INSTALL file 61 | 62 | Version 0.8.0 63 | 2 December 2004 64 | -- Limited release for comments... 65 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/Makefile: -------------------------------------------------------------------------------- 1 | ## 2 | ## A sample Makefile for building driver disks 3 | ## 4 | 5 | KVERSIONS := $(shell \ 6 | if [ -f kversions ]; \ 7 | then \ 8 | cat kversions | sed 's/\([^\#]*\)\#.*/\1/' ; \ 9 | else \ 10 | uname -r ; \ 11 | fi) 12 | KARCH := $(shell uname -m) 13 | 14 | SUBDIRS := $(shell \ 15 | if [ -f subdirs ]; \ 16 | then \ 17 | cat subdirs | sed 's/\([^\#]*\)\#.*/\1/' ; \ 18 | fi) 19 | 20 | FSTYPE=ext2 21 | 22 | SU=/bin/su 23 | 24 | TOPDIR := $(shell /bin/pwd) 25 | 26 | .PHONY: all 27 | 28 | all: sources diskiso 29 | #all: sources diskimg diskiso 30 | 31 | include Build.rules 32 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/README: -------------------------------------------------------------------------------- 1 | INTRODUCTION 2 | 3 | Welcome to ddiskit! (pronounced dee-dis-kit) 4 | 5 | The raison d'etre for ddiskit is to ease the burden (and encode 6 | the magic) of making Device Driver Update Disks for Red Hat 7 | originated distributions (i.e. RHEL and FC) based on the 2.6 (and 8 | beyond?) series of Linux kernels. ddiskit fills the same need which 9 | Doug Ledford's Device Driver Update Disk Devel Kit (available at 10 | http://people.redhat.com/dledford) filled for prior generations of 11 | Red Hat distributions. 12 | 13 | GETTING STARTED 14 | 15 | The basic set of operations needed to adapt ddiskit for building 16 | driver disks with your desired drivers looks like this: 17 | 18 | -- Modify the contents of the kversions file 19 | -- Modify the contents of the subdirs file 20 | -- Add a directory for the new driver being built 21 | -- Copy the sources for the new driver to that directory 22 | -- Copy the RPM SPEC file and kmodtool from the tmpl directory 23 | -- to the new driver's directory and modify them appropriately 24 | -- Type 'make' in the top-level directory 25 | -- Retrieve the dd.iso.gz file from the images directory 26 | 27 | Several example drivers are provided. New users are encouraged to 28 | simply type 'make' in the top-level directory in order to fully enjoy 29 | the out-of-box experience. 30 | 31 | Note: ddiskit must be customized before it can generate Driver Update 32 | Disk images appropriate for use with any Red Hat distribution. 33 | 34 | WHAT'S IN THE BOX? 35 | 36 | . 37 | |-- Build.rules -- Rules used in the build process 38 | |-- COPYING -- License information for ddiskit 39 | |-- ChangeLog -- Log of notable changes between releases 40 | |-- INSTALL -- Information on customizing ddiskit 41 | |-- Makefile -- Top-level Makefile 42 | |-- README -- This file 43 | |-- TODO -- Ideas for the future of ddiskit 44 | |-- ata_piix -- Example storage driver 45 | |-- bin -- Scripts used in the build process 46 | |-- cciss -- Example storage driver 47 | |-- dist -- List of source files to include in disk image 48 | |-- e1000 -- Example net driver (multiple object files) 49 | |-- kversions -- List of kernel versions for building drivers 50 | |-- src -- Sources used in Device Driver Update Disk creation 51 | |-- subdirs -- List of subdirectories to build 52 | |-- tg3 -- Example net driver (single object file) 53 | `-- tmpl -- Templates for driver Makefiles 54 | 55 | WHERE TO GO NEXT? 56 | 57 | For more detailed information on customizing ddiskit, please see the 58 | INSTALL file. 59 | 60 | -- 61 | John W. Linville 62 | Red Hat, Inc. 63 | 29 January 2007 64 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/TODO: -------------------------------------------------------------------------------- 1 | Some good ideas for the near future: 2 | 3 | -- Create a driver installation script that works with a 4 | pre-installed OS (i.e. install driver w/o anaconda); 5 | 6 | -- Facilitate building (S)RPMs for driver modules. 7 | (initial work has been done). 8 | 9 | Some good ideas for farther out: 10 | 11 | -- Create "autorun" script so driver installation starts 12 | automatically when CD is inserted (don't forget icon.xpm!); 13 | 14 | -- Integrate/cooperate w/ kudzu(-like) tool for automatic 15 | installation of "correct" driver on pre-installed OS. 16 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/ata_piix/Makefile: -------------------------------------------------------------------------------- 1 | ## 2 | ## Yet another sample Makefile for building modules for driver disks 3 | ## 4 | 5 | MODULES := libata ata_piix 6 | 7 | libata_SOURCES := libata-core.c libata-scsi.c libata-bmdma.c libata-eh.c 8 | ata_piix_SOURCES := ata_piix.c 9 | 10 | HEADERS := libata.h scsi_priv.h scsi_transport_api.h 11 | 12 | define MODULE_template 13 | # If $(1)_SOURCES is not defined, presume single module... 14 | ifeq ($(words $($(1)_SOURCES)),0) 15 | # If multiple SOURCES... 16 | ifneq ($(words $(SOURCES)),1) 17 | # Define $(1)-objs 18 | $(1)-objs := $(subst .c,.o,$(SOURCES)) 19 | endif 20 | else 21 | # Append $(1)_SOURCES to SOURCES 22 | SOURCES += $$($(1)_SOURCES) 23 | 24 | # If multiple $(1)_SOURCES... 25 | ifneq ($(words $($(1)_SOURCES)),1) 26 | # Define $(1)-objs 27 | $(1)-objs := $(subst .c,.o,$($(1)_SOURCES)) 28 | else 29 | # If $(1)_SOURCES does not match module name... 30 | ifneq ($(patsubst %,%.c,$(1)),$($(1)_SOURCES)) 31 | # Define $(1)-objs 32 | $(1)-objs := $(subst .c,.o,$($(1)_SOURCES)) 33 | endif 34 | endif 35 | endif 36 | 37 | # Add module to obj-m 38 | obj-m += $(patsubst %,%.o,$(1)) 39 | endef 40 | 41 | $(foreach module,$(MODULES),$(eval $(call MODULE_template,$(module)))) 42 | 43 | EXTRA_CFLAGS += -I$(PWD) 44 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/ata_piix/Makefile.build: -------------------------------------------------------------------------------- 1 | ## 2 | ## A standard Makefile.build for building modules for driver disks 3 | ## 4 | 5 | include Makefile 6 | 7 | include $(TOPDIR)/Build.rules 8 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/ata_piix/modinfo: -------------------------------------------------------------------------------- 1 | ata_piix 2 | scsi 3 | "Update ICH SATA driver" 4 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/ata_piix/modules.dep: -------------------------------------------------------------------------------- 1 | ata_piix: libata scsi_mod 2 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/ata_piix/pcitable: -------------------------------------------------------------------------------- 1 | 0x8086 0x24d1 "ata_piix" "Intel Corp.|82801EB (ICH5) SATA Controller" 2 | 0x8086 0x24df "ata_piix" "Intel Corp.|82801ER (ICH5R) SATA Controller" 3 | 0x8086 0x25a3 "ata_piix" "Intel Corp.|6300ESB SATA Storage Controller 4 | 0x8086 0x25b0 "ata_piix" "Intel Corp.|6300ESB SATA RAID Controller" 5 | 0x8086 0x2651 "ata_piix" "Intel Corp.|82801FB/FW (ICH6/ICH6W) SATA Controller" 6 | 0x8086 0x2652 "ata_piix" "Intel Corp.|82801FR/FRW (ICH6R/ICH6RW) SATA Controller" 7 | 0x8086 0x2653 "ata_piix" "Intel Corp.|82801FBM (ICH6M) SATA Controller" 8 | 0x8086 0x2680 "ata_piix" "Intel Corp.|631xESB/632xESB/3100 Chipset SATA Storage Controller IDE" 9 | 0x8086 0x27c0 "ata_piix" "Intel Corp.|82801GB/GR/GH (ICH7 Family) Serial ATA Storage Controller IDE" 10 | 0x8086 0x27c4 "ata_piix" "Intel Corp.|82801GBM/GHM (ICH7 Family) Serial ATA Storage Controller IDE" 11 | 0x8086 0x2820 "ata_piix" "Intel Corp.|82801H (ICH8 Family) 4 port SATA IDE Controller" 12 | 0x8086 0x2825 "ata_piix" "Intel Corp.|82801H (ICH8 Family) 2 port SATA IDE Controller" 13 | 0x8086 0x2828 "ata_piix" "Intel Corp.|Mobile SATA IDE Controller" 14 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/ata_piix/scsi_transport_api.h: -------------------------------------------------------------------------------- 1 | #ifndef _SCSI_TRANSPORT_API_H 2 | #define _SCSI_TRANSPORT_API_H 3 | 4 | void scsi_schedule_eh(struct Scsi_Host *shost); 5 | 6 | #endif /* _SCSI_TRANSPORT_API_H */ 7 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/bin/makedisk: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | FSTYPE=$1 4 | FSIMG=$2 5 | FSMNT=$3 6 | 7 | if [ "$FSTYPE" = "ext2" ] 8 | then 9 | FSARGS=-F 10 | fi 11 | 12 | /sbin/mkfs -t ${FSTYPE} ${FSARGS} ${FSIMG} >/dev/null 2>&1 13 | mount -o loop -t ${FSTYPE} ${FSIMG} ${FSMNT} 14 | 15 | cp -dR disk/* ${FSMNT} 16 | 17 | umount ${FSMNT} 18 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/cciss/Makefile: -------------------------------------------------------------------------------- 1 | ## 2 | ## A Makefile for building cciss modules for driver disks 3 | ## 4 | 5 | MODULES := cciss 6 | 7 | SOURCES := cciss.c 8 | 9 | HEADERS := cciss.h cciss_cmd.h cciss_scsi.h cciss_scsi.c \ 10 | scsi.h scsi_obsolete.h scsi_typedefs.h 11 | 12 | define MODULE_template 13 | # If $(1)_SOURCES is not defined, presume single module... 14 | ifeq ($(words $($(1)_SOURCES)),0) 15 | # If multiple SOURCES... 16 | ifneq ($(words $(SOURCES)),1) 17 | # Define $(1)-objs 18 | $(1)-objs := $(subst .c,.o,$(SOURCES)) 19 | endif 20 | else 21 | # Append $(1)_SOURCES to SOURCES 22 | SOURCES += $$($(1)_SOURCES) 23 | 24 | # If multiple $(1)_SOURCES... 25 | ifneq ($(words $($(1)_SOURCES)),1) 26 | # Define $(1)-objs 27 | $(1)-objs := $(subst .c,.o,$($(1)_SOURCES)) 28 | else 29 | # If $(1)_SOURCES does not match module name... 30 | ifneq ($(patsubst %,%.c,$(1)),$($(1)_SOURCES)) 31 | # Define $(1)-objs 32 | $(1)-objs := $(subst .c,.o,$($(1)_SOURCES)) 33 | endif 34 | endif 35 | endif 36 | 37 | # Add module to obj-m 38 | obj-m += $(patsubst %,%.o,$(1)) 39 | endef 40 | 41 | $(foreach module,$(MODULES),$(eval $(call MODULE_template,$(module)))) 42 | 43 | EXTRA_CFLAGS += -I$(PWD) 44 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/cciss/Makefile.build: -------------------------------------------------------------------------------- 1 | ## 2 | ## A standard Makefile.build for building modules for driver disks 3 | ## 4 | 5 | include Makefile 6 | 7 | include $(TOPDIR)/Build.rules 8 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/cciss/cciss_scsi.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Disk Array driver for Compaq SA53xx Controllers, SCSI Tape module 3 | * Copyright 2001 Compaq Computer Corporation 4 | * 5 | * This program is free software; you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation; either version 2 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, GOOD TITLE or 13 | * NON INFRINGEMENT. See the GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program; if not, write to the Free Software 17 | * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 18 | * 19 | * Questions/Comments/Bugfixes to iss_storagedev@hp.com 20 | * 21 | */ 22 | #ifdef CONFIG_CISS_SCSI_TAPE 23 | #ifndef _CCISS_SCSI_H_ 24 | #define _CCISS_SCSI_H_ 25 | 26 | #include /* possibly irrelevant, since we don't show disks */ 27 | 28 | // the scsi id of the adapter... 29 | #define SELF_SCSI_ID 15 30 | // 15 is somewhat arbitrary, since the scsi-2 bus 31 | // that's presented by the driver to the OS is 32 | // fabricated. The "real" scsi-3 bus the 33 | // hardware presents is fabricated too. 34 | // The actual, honest-to-goodness physical 35 | // bus that the devices are attached to is not 36 | // addressible natively, and may in fact turn 37 | // out to be not scsi at all. 38 | 39 | #define SCSI_CCISS_CAN_QUEUE 2 40 | 41 | /* 42 | 43 | Note, cmd_per_lun could give us some trouble, so I'm setting it very low. 44 | Likewise, SCSI_CCISS_CAN_QUEUE is set very conservatively. 45 | 46 | If the upper scsi layer tries to track how many commands we have 47 | outstanding, it will be operating under the misapprehension that it is 48 | the only one sending us requests. We also have the block interface, 49 | which is where most requests must surely come from, so the upper layer's 50 | notion of how many requests we have outstanding will be wrong most or 51 | all of the time. 52 | 53 | Note, the normal SCSI mid-layer error handling doesn't work well 54 | for this driver because 1) it takes the io_request_lock before 55 | calling error handlers and uses a local variable to store flags, 56 | so the io_request_lock cannot be released and interrupts enabled 57 | inside the error handlers, and, the error handlers cannot poll 58 | for command completion because they might get commands from the 59 | block half of the driver completing, and not know what to do 60 | with them. That's what we get for making a hybrid scsi/block 61 | driver, I suppose. 62 | 63 | */ 64 | 65 | struct cciss_scsi_dev_t { 66 | int devtype; 67 | int bus, target, lun; /* as presented to the OS */ 68 | unsigned char scsi3addr[8]; /* as presented to the HW */ 69 | }; 70 | 71 | struct cciss_scsi_hba_t { 72 | char *name; 73 | int ndevices; 74 | #define CCISS_MAX_SCSI_DEVS_PER_HBA 16 75 | struct cciss_scsi_dev_t dev[CCISS_MAX_SCSI_DEVS_PER_HBA]; 76 | }; 77 | 78 | #endif /* _CCISS_SCSI_H_ */ 79 | #endif /* CONFIG_CISS_SCSI_TAPE */ 80 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/cciss/modinfo: -------------------------------------------------------------------------------- 1 | cciss 2 | scsi 3 | "Update CCISS driver" 4 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/cciss/modules.dep: -------------------------------------------------------------------------------- 1 | cciss: scsi_mod 2 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/cciss/pcitable: -------------------------------------------------------------------------------- 1 | 0x0e11 0x0046 "cciss" "Compaq|Smart Array 64xx" 2 | 0x0e11 0xb060 "cciss" "Compaq|Smart Array 5300 Controller" 3 | 0x0e11 0xb178 "cciss" "Compaq|Smart Array 5i/532" 4 | 0x103c 0x3220 "cciss" "Hewlett-Packard|Smart Array P600" 5 | 0x103c 0x3230 "cciss" "Hewlett-Packard|Smart Array Controller" 6 | 0x103c 0x3238 "cciss" "Hewlett-Packard|Smart Array E200i (SAS Controller)" 7 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/dist: -------------------------------------------------------------------------------- 1 | ./ata_piix/ata_piix.c 2 | ./ata_piix/libata-bmdma.c 3 | ./ata_piix/libata-core.c 4 | ./ata_piix/libata-eh.c 5 | ./ata_piix/libata.h 6 | ./ata_piix/libata-scsi.c 7 | ./ata_piix/Makefile 8 | ./ata_piix/Makefile.build 9 | ./ata_piix/modinfo 10 | ./ata_piix/modules.dep 11 | ./ata_piix/pcitable 12 | ./ata_piix/scsi_priv.h 13 | ./ata_piix/scsi_transport_api.h 14 | ./bin/makedisk 15 | ./Build.rules 16 | ./cciss/cciss.c 17 | ./cciss/cciss_cmd.h 18 | ./cciss/cciss.h 19 | ./cciss/cciss_scsi.c 20 | ./cciss/cciss_scsi.h 21 | ./cciss/Makefile 22 | ./cciss/Makefile.build 23 | ./cciss/modinfo 24 | ./cciss/modules.dep 25 | ./cciss/pcitable 26 | ./ChangeLog 27 | ./COPYING 28 | ./dist 29 | ./e1000/e1000_ethtool.c 30 | ./e1000/e1000.h 31 | ./e1000/e1000_hw.c 32 | ./e1000/e1000_hw.h 33 | ./e1000/e1000_main.c 34 | ./e1000/e1000_osdep.h 35 | ./e1000/e1000_param.c 36 | ./e1000/LICENSE 37 | ./e1000/Makefile 38 | ./e1000/Makefile.build 39 | ./e1000/modinfo 40 | ./e1000/modules.dep 41 | ./e1000/pcitable 42 | ./INSTALL 43 | ./kversions 44 | ./Makefile 45 | ./qla2xxx/modinfo 46 | ./qla2xxx/modules.dep 47 | ./qla2xxx/pcitable 48 | ./qla2xxx/rpm/SOURCES/kmodtool_qla2xxx 49 | ./qla2xxx/rpm/SOURCES/ql2100_fw.bin 50 | ./qla2xxx/rpm/SOURCES/ql2200_fw.bin 51 | ./qla2xxx/rpm/SOURCES/ql2300_fw.bin 52 | ./qla2xxx/rpm/SOURCES/ql2322_fw.bin 53 | ./qla2xxx/rpm/SOURCES/ql2400_fw.bin 54 | ./qla2xxx/rpm/SOURCES/qla2xxx-8170.tar.bz2 55 | ./qla2xxx/rpm/SPECS/qla2xxx.spec 56 | ./README 57 | ./src/rhdd 58 | ./subdirs 59 | ./tg3/Makefile 60 | ./tg3/Makefile.build 61 | ./tg3/modinfo 62 | ./tg3/modules.dep 63 | ./tg3/pcitable 64 | ./tg3/tg3.c 65 | ./tg3/tg3.h 66 | ./tmpl/new/README 67 | ./tmpl/new/rpm/SOURCES/kmodtool 68 | ./tmpl/new/rpm/SPECS/tmpl.spec 69 | ./tmpl/old/Makefile 70 | ./tmpl/old/Makefile.build 71 | ./tmpl/old/README 72 | ./TODO 73 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/e1000/Makefile: -------------------------------------------------------------------------------- 1 | ## 2 | ## Another sample Makefile for building modules for driver disks 3 | ## 4 | 5 | MODULES := e1000 6 | 7 | SOURCES := e1000_main.c e1000_hw.c e1000_ethtool.c e1000_param.c 8 | 9 | HEADERS := e1000.h e1000_hw.h e1000_osdep.h 10 | 11 | define MODULE_template 12 | # If $(1)_SOURCES is not defined, presume single module... 13 | ifeq ($(words $($(1)_SOURCES)),0) 14 | # If multiple SOURCES... 15 | ifneq ($(words $(SOURCES)),1) 16 | # Define $(1)-objs 17 | $(1)-objs := $(subst .c,.o,$(SOURCES)) 18 | endif 19 | else 20 | # Append $(1)_SOURCES to SOURCES 21 | SOURCES += $$($(1)_SOURCES) 22 | 23 | # If multiple $(1)_SOURCES... 24 | ifneq ($(words $($(1)_SOURCES)),1) 25 | # Define $(1)-objs 26 | $(1)-objs := $(subst .c,.o,$($(1)_SOURCES)) 27 | else 28 | # If $(1)_SOURCES does not match module name... 29 | ifneq ($(patsubst %,%.c,$(1)),$($(1)_SOURCES)) 30 | # Define $(1)-objs 31 | $(1)-objs := $(subst .c,.o,$($(1)_SOURCES)) 32 | endif 33 | endif 34 | endif 35 | 36 | # Add module to obj-m 37 | obj-m += $(patsubst %,%.o,$(1)) 38 | endef 39 | 40 | $(foreach module,$(MODULES),$(eval $(call MODULE_template,$(module)))) 41 | 42 | EXTRA_CFLAGS += -I$(PWD) 43 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/e1000/Makefile.build: -------------------------------------------------------------------------------- 1 | ## 2 | ## A standard Makefile.build for building modules for driver disks 3 | ## 4 | 5 | include Makefile 6 | 7 | include $(TOPDIR)/Build.rules 8 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/e1000/modinfo: -------------------------------------------------------------------------------- 1 | e1000 2 | net 3 | "Update Intel e1000 gigabit ethernet driver" 4 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/e1000/modules.dep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rocksclusters/kernel/31e305619dff8eb32fee5d57ba3ca9eb68add5d3/src/rocks-boot/enterprise/5/images/drivers/e1000/modules.dep -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/qla2xxx/modinfo: -------------------------------------------------------------------------------- 1 | qla2xxx 2 | scsi 3 | "QLogic 2xxx HBA." 4 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/qla2xxx/modules.dep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rocksclusters/kernel/31e305619dff8eb32fee5d57ba3ca9eb68add5d3/src/rocks-boot/enterprise/5/images/drivers/qla2xxx/modules.dep -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/qla2xxx/pcitable: -------------------------------------------------------------------------------- 1 | 0x1077 0x5432 "qla2xxx" "QLogic 2xxx HBA." 2 | 0x1077 0x5422 "qla2xxx" "QLogic 2xxx HBA." 3 | 0x1077 0x2432 "qla2xxx" "QLogic 2xxx HBA." 4 | 0x1077 0x2422 "qla2xxx" "QLogic 2xxx HBA." 5 | 0x1077 0x6322 "qla2xxx" "QLogic 2xxx HBA." 6 | 0x1077 0x6312 "qla2xxx" "QLogic 2xxx HBA." 7 | 0x1077 0x2322 "qla2xxx" "QLogic 2xxx HBA." 8 | 0x1077 0x2312 "qla2xxx" "QLogic 2xxx HBA." 9 | 0x1077 0x2300 "qla2xxx" "QLogic 2xxx HBA." 10 | 0x1077 0x2200 "qla2xxx" "QLogic 2xxx HBA." 11 | 0x1077 0x2100 "qla2xxx" "QLogic 2xxx HBA." 12 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/qla2xxx/rpm/SOURCES/ql2100_fw.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rocksclusters/kernel/31e305619dff8eb32fee5d57ba3ca9eb68add5d3/src/rocks-boot/enterprise/5/images/drivers/qla2xxx/rpm/SOURCES/ql2100_fw.bin -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/qla2xxx/rpm/SOURCES/ql2200_fw.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rocksclusters/kernel/31e305619dff8eb32fee5d57ba3ca9eb68add5d3/src/rocks-boot/enterprise/5/images/drivers/qla2xxx/rpm/SOURCES/ql2200_fw.bin -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/qla2xxx/rpm/SOURCES/ql2300_fw.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rocksclusters/kernel/31e305619dff8eb32fee5d57ba3ca9eb68add5d3/src/rocks-boot/enterprise/5/images/drivers/qla2xxx/rpm/SOURCES/ql2300_fw.bin -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/qla2xxx/rpm/SOURCES/ql2322_fw.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rocksclusters/kernel/31e305619dff8eb32fee5d57ba3ca9eb68add5d3/src/rocks-boot/enterprise/5/images/drivers/qla2xxx/rpm/SOURCES/ql2322_fw.bin -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/qla2xxx/rpm/SOURCES/ql2400_fw.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rocksclusters/kernel/31e305619dff8eb32fee5d57ba3ca9eb68add5d3/src/rocks-boot/enterprise/5/images/drivers/qla2xxx/rpm/SOURCES/ql2400_fw.bin -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/qla2xxx/rpm/SPECS/qla2xxx.spec: -------------------------------------------------------------------------------- 1 | ############################################################################### 2 | ############################################################################### 3 | ## 4 | ## Copyright (C) 2004-2006 Red Hat, Inc. All rights reserved. 5 | ## 6 | ## This copyrighted material is made available to anyone wishing to use, 7 | ## modify, copy, or redistribute it subject to the terms and conditions 8 | ## of the GNU General Public License v.2. 9 | ## 10 | ############################################################################### 11 | ############################################################################### 12 | 13 | Source10: kmodtool_qla2xxx 14 | %define kmodtool bash %{SOURCE10} 15 | %{!?kversion: %define kversion 2.6.18-8.1.10.el5} 16 | 17 | %define kmod_name qla2xxx 18 | %define kverrel %(%{kmodtool} verrel %{?kversion} 2>/dev/null) 19 | 20 | %ifarch i686 x86_64 ia64 21 | %define xenvar xen 22 | %endif 23 | 24 | %define upvar "" 25 | %{!?kvariants: %define kvariants %{?upvar} %{?xenvar}} 26 | 27 | Name: %{kmod_name}-kmod 28 | Version: 8170 29 | Release: 1.1%{?dist} 30 | Summary: %{kmod_name} kernel module 31 | 32 | Group: System Environment/Kernel 33 | License: GPL 34 | URL: http://www.intel.com/ 35 | Source0: qla2xxx-%{version}.tar.bz2 36 | Source1: ql2100_fw.bin 37 | Source2: ql2200_fw.bin 38 | Source3: ql2300_fw.bin 39 | Source4: ql2322_fw.bin 40 | Source5: ql2400_fw.bin 41 | BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) 42 | ExclusiveArch: i686 x86_64 43 | 44 | %description 45 | qla2xxx - QLogic HBA driver (testing only release). 46 | 47 | # magic hidden here: 48 | %{expand:%(%{kmodtool} rpmtemplate_kmp %{kmod_name} %{kverrel} %{kvariants} 2>/dev/null)} 49 | 50 | %prep 51 | # to understand the magic better or to debug it, uncomment this: 52 | #{kmodtool} rpmtemplate_kmp %{kmod_name} %{kverrel} %{kvariants} 2>/dev/null 53 | #sleep 5 54 | %setup -q -c -T -a 0 55 | for kvariant in %{kvariants} ; do 56 | cp -a qla2xxx-8170 _kmod_build_$kvariant 57 | done 58 | 59 | 60 | %build 61 | for kvariant in %{kvariants} 62 | do 63 | ksrc=%{_usrsrc}/kernels/%{kverrel}${kvariant:+-$kvariant}-%{_target_cpu} 64 | pushd _kmod_build_$kvariant 65 | make -C "${ksrc}" modules M=$PWD 66 | popd 67 | done 68 | 69 | 70 | %install 71 | export INSTALL_MOD_PATH=$RPM_BUILD_ROOT 72 | export INSTALL_MOD_DIR=extra/%{kmod_name} 73 | for kvariant in %{kvariants} 74 | do 75 | ksrc=%{_usrsrc}/kernels/%{kverrel}${kvariant:+-$kvariant}-%{_target_cpu} 76 | pushd _kmod_build_$kvariant 77 | make -C "${ksrc}" modules_install M=$PWD 78 | popd 79 | done 80 | 81 | mkdir -p ${RPM_BUILD_ROOT}/lib/firmware 82 | cp %{SOURCE1} ${RPM_BUILD_ROOT}/lib/firmware 83 | cp %{SOURCE2} ${RPM_BUILD_ROOT}/lib/firmware 84 | cp %{SOURCE3} ${RPM_BUILD_ROOT}/lib/firmware 85 | cp %{SOURCE4} ${RPM_BUILD_ROOT}/lib/firmware 86 | cp %{SOURCE5} ${RPM_BUILD_ROOT}/lib/firmware 87 | 88 | %clean 89 | rm -rf $RPM_BUILD_ROOT 90 | 91 | %changelog 92 | * Mon Jun 18 2007 Jon Masters - 1.1 93 | - Internal test only. 94 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/src/rhdd: -------------------------------------------------------------------------------- 1 | RHEL5 Driver Update Disk 2 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/subdirs: -------------------------------------------------------------------------------- 1 | # 2 | # put a list of all the driver directories that you'd like to build. 3 | # 4 | # for example, to build the 'e1000' driver, uncomment the line below: 5 | # e1000 6 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/tg3/2.6.24.4-1-i686/Makefile: -------------------------------------------------------------------------------- 1 | ## 2 | ## A sample Makefile for building modules for driver disks 3 | ## 4 | 5 | MODULES := tg3 6 | 7 | SOURCES := tg3.c 8 | 9 | HEADERS := tg3.h 10 | 11 | define MODULE_template 12 | # If $(1)_SOURCES is not defined, presume single module... 13 | ifeq ($(words $($(1)_SOURCES)),0) 14 | # If multiple SOURCES... 15 | ifneq ($(words $(SOURCES)),1) 16 | # Define $(1)-objs 17 | $(1)-objs := $(subst .c,.o,$(SOURCES)) 18 | endif 19 | else 20 | # Append $(1)_SOURCES to SOURCES 21 | SOURCES += $$($(1)_SOURCES) 22 | 23 | # If multiple $(1)_SOURCES... 24 | ifneq ($(words $($(1)_SOURCES)),1) 25 | # Define $(1)-objs 26 | $(1)-objs := $(subst .c,.o,$($(1)_SOURCES)) 27 | else 28 | # If $(1)_SOURCES does not match module name... 29 | ifneq ($(patsubst %,%.c,$(1)),$($(1)_SOURCES)) 30 | # Define $(1)-objs 31 | $(1)-objs := $(subst .c,.o,$($(1)_SOURCES)) 32 | endif 33 | endif 34 | endif 35 | 36 | # Add module to obj-m 37 | obj-m += $(patsubst %,%.o,$(1)) 38 | endef 39 | 40 | $(foreach module,$(MODULES),$(eval $(call MODULE_template,$(module)))) 41 | 42 | EXTRA_CFLAGS += -I$(PWD) 43 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/tg3/2.6.24.4-1-i686/Makefile.build: -------------------------------------------------------------------------------- 1 | ## 2 | ## A standard Makefile.build for building modules for driver disks 3 | ## 4 | 5 | include Makefile 6 | 7 | include $(TOPDIR)/Build.rules 8 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/tg3/2.6.24.4-1xen-i686/Makefile: -------------------------------------------------------------------------------- 1 | ## 2 | ## A sample Makefile for building modules for driver disks 3 | ## 4 | 5 | MODULES := tg3 6 | 7 | SOURCES := tg3.c 8 | 9 | HEADERS := tg3.h 10 | 11 | define MODULE_template 12 | # If $(1)_SOURCES is not defined, presume single module... 13 | ifeq ($(words $($(1)_SOURCES)),0) 14 | # If multiple SOURCES... 15 | ifneq ($(words $(SOURCES)),1) 16 | # Define $(1)-objs 17 | $(1)-objs := $(subst .c,.o,$(SOURCES)) 18 | endif 19 | else 20 | # Append $(1)_SOURCES to SOURCES 21 | SOURCES += $$($(1)_SOURCES) 22 | 23 | # If multiple $(1)_SOURCES... 24 | ifneq ($(words $($(1)_SOURCES)),1) 25 | # Define $(1)-objs 26 | $(1)-objs := $(subst .c,.o,$($(1)_SOURCES)) 27 | else 28 | # If $(1)_SOURCES does not match module name... 29 | ifneq ($(patsubst %,%.c,$(1)),$($(1)_SOURCES)) 30 | # Define $(1)-objs 31 | $(1)-objs := $(subst .c,.o,$($(1)_SOURCES)) 32 | endif 33 | endif 34 | endif 35 | 36 | # Add module to obj-m 37 | obj-m += $(patsubst %,%.o,$(1)) 38 | endef 39 | 40 | $(foreach module,$(MODULES),$(eval $(call MODULE_template,$(module)))) 41 | 42 | EXTRA_CFLAGS += -I$(PWD) 43 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/tg3/2.6.24.4-1xen-i686/Makefile.build: -------------------------------------------------------------------------------- 1 | ## 2 | ## A standard Makefile.build for building modules for driver disks 3 | ## 4 | 5 | include Makefile 6 | 7 | include $(TOPDIR)/Build.rules 8 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/tg3/Makefile: -------------------------------------------------------------------------------- 1 | ## 2 | ## A sample Makefile for building modules for driver disks 3 | ## 4 | 5 | MODULES := tg3 6 | 7 | SOURCES := tg3.c 8 | 9 | HEADERS := tg3.h 10 | 11 | define MODULE_template 12 | # If $(1)_SOURCES is not defined, presume single module... 13 | ifeq ($(words $($(1)_SOURCES)),0) 14 | # If multiple SOURCES... 15 | ifneq ($(words $(SOURCES)),1) 16 | # Define $(1)-objs 17 | $(1)-objs := $(subst .c,.o,$(SOURCES)) 18 | endif 19 | else 20 | # Append $(1)_SOURCES to SOURCES 21 | SOURCES += $$($(1)_SOURCES) 22 | 23 | # If multiple $(1)_SOURCES... 24 | ifneq ($(words $($(1)_SOURCES)),1) 25 | # Define $(1)-objs 26 | $(1)-objs := $(subst .c,.o,$($(1)_SOURCES)) 27 | else 28 | # If $(1)_SOURCES does not match module name... 29 | ifneq ($(patsubst %,%.c,$(1)),$($(1)_SOURCES)) 30 | # Define $(1)-objs 31 | $(1)-objs := $(subst .c,.o,$($(1)_SOURCES)) 32 | endif 33 | endif 34 | endif 35 | 36 | # Add module to obj-m 37 | obj-m += $(patsubst %,%.o,$(1)) 38 | endef 39 | 40 | $(foreach module,$(MODULES),$(eval $(call MODULE_template,$(module)))) 41 | 42 | EXTRA_CFLAGS += -I$(PWD) 43 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/tg3/Makefile.build: -------------------------------------------------------------------------------- 1 | ## 2 | ## A standard Makefile.build for building modules for driver disks 3 | ## 4 | 5 | include Makefile 6 | 7 | include $(TOPDIR)/Build.rules 8 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/tg3/modinfo: -------------------------------------------------------------------------------- 1 | tg3 2 | net 3 | "Update Broadcom tg3 gigabit ethernet driver" 4 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/tg3/modules.dep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rocksclusters/kernel/31e305619dff8eb32fee5d57ba3ca9eb68add5d3/src/rocks-boot/enterprise/5/images/drivers/tg3/modules.dep -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/tmpl/new/README: -------------------------------------------------------------------------------- 1 | This directory contains a template layout for a new driver update module: 2 | 3 | rpm/SPECS/tmpl.spec - A spec file governing the build of the Driver Update. 4 | rpm/SOURCES/kmodtool - A support script used during the build process. 5 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/tmpl/new/rpm/SPECS/tmpl.spec: -------------------------------------------------------------------------------- 1 | ############################################################################### 2 | ############################################################################### 3 | ## 4 | ## Copyright (C) 2004-2006 Red Hat, Inc. All rights reserved. 5 | ## 6 | ## This copyrighted material is made available to anyone wishing to use, 7 | ## modify, copy, or redistribute it subject to the terms and conditions 8 | ## of the GNU General Public License v.2. 9 | ## 10 | ############################################################################### 11 | ############################################################################### 12 | 13 | Source10: kmodtool 14 | %define kmodtool bash %{SOURCE10} 15 | %{!?kversion: %define kversion 2.6.18-8.1.10.el5} 16 | 17 | %define kmod_name tmpl 18 | %define kverrel %(%{kmodtool} verrel %{?kversion} 2>/dev/null) 19 | 20 | %ifarch i686 x86_64 ia64 21 | %define xenvar xen 22 | %endif 23 | 24 | %define upvar "" 25 | %{!?kvariants: %define kvariants %{?upvar} %{?xenvar}} 26 | 27 | Name: %{kmod_name}-kmod 28 | Version: 1 29 | Release: 1.0%{?dist} 30 | Summary: %{kmod_name} kernel module 31 | 32 | Group: System Environment/Kernel 33 | License: GPL 34 | URL: http://www.intel.com/ 35 | Source0: tmpl-%{version}.tar.bz2 36 | BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) 37 | ExclusiveArch: i686 x86_64 38 | 39 | %description 40 | tmpl - Driver Update Disk template RPM SPEC file. 41 | 42 | # magic hidden here: 43 | %{expand:%(%{kmodtool} rpmtemplate_kmp %{kmod_name} %{kverrel} %{kvariants} 2>/dev/null)} 44 | 45 | %prep 46 | # to understand the magic better or to debug it, uncomment this: 47 | #{kmodtool} rpmtemplate_kmp %{kmod_name} %{kverrel} %{kvariants} 2>/dev/null 48 | #sleep 5 49 | %setup -q -c -T -a 0 50 | for kvariant in %{kvariants} ; do 51 | cp -a qla2xxx-8170 _kmod_build_$kvariant 52 | done 53 | 54 | 55 | %build 56 | for kvariant in %{kvariants} 57 | do 58 | ksrc=%{_usrsrc}/kernels/%{kverrel}${kvariant:+-$kvariant}-%{_target_cpu} 59 | pushd _kmod_build_$kvariant 60 | make -C "${ksrc}" modules M=$PWD 61 | popd 62 | done 63 | 64 | 65 | %install 66 | export INSTALL_MOD_PATH=$RPM_BUILD_ROOT 67 | export INSTALL_MOD_DIR=extra/%{kmod_name} 68 | for kvariant in %{kvariants} 69 | do 70 | ksrc=%{_usrsrc}/kernels/%{kverrel}${kvariant:+-$kvariant}-%{_target_cpu} 71 | pushd _kmod_build_$kvariant 72 | make -C "${ksrc}" modules_install M=$PWD 73 | popd 74 | done 75 | 76 | mkdir -p ${RPM_BUILD_ROOT}/lib/firmware 77 | 78 | %clean 79 | rm -rf $RPM_BUILD_ROOT 80 | 81 | %changelog 82 | * Wed Oct 3 2007 Jon Masters - 1.0 83 | - Initial template SPECFILE. 84 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/tmpl/old/Makefile: -------------------------------------------------------------------------------- 1 | ## 2 | ## A sample Makefile for building modules for driver disks 3 | ## 4 | ## -- List every module in MODULES 5 | ## 6 | ## -- Create a modname_SOURCES for every module (*) 7 | ## 8 | ## -- Add all header files (and other files needed for build) to HEADERS 9 | ## 10 | ## (*) Change modname to reflect the appropriate module name(s) 11 | ## 12 | 13 | MODULES := modname 14 | 15 | modname_SOURCES := 16 | 17 | HEADERS := 18 | 19 | define MODULE_template 20 | # If $(1)_SOURCES is not defined, presume single module... 21 | ifeq ($(words $($(1)_SOURCES)),0) 22 | # If multiple SOURCES... 23 | ifneq ($(words $(SOURCES)),1) 24 | # Define $(1)-objs 25 | $(1)-objs := $(subst .c,.o,$(SOURCES)) 26 | endif 27 | else 28 | # Append $(1)_SOURCES to SOURCES 29 | SOURCES += $$($(1)_SOURCES) 30 | 31 | # If multiple $(1)_SOURCES... 32 | ifneq ($(words $($(1)_SOURCES)),1) 33 | # Define $(1)-objs 34 | $(1)-objs := $(subst .c,.o,$($(1)_SOURCES)) 35 | else 36 | # If $(1)_SOURCES does not match module name... 37 | ifneq ($(patsubst %,%.c,$(1)),$($(1)_SOURCES)) 38 | # Define $(1)-objs 39 | $(1)-objs := $(subst .c,.o,$($(1)_SOURCES)) 40 | endif 41 | endif 42 | endif 43 | 44 | # Add module to obj-m 45 | obj-m += $(patsubst %,%.o,$(1)) 46 | endef 47 | 48 | $(foreach module,$(MODULES),$(eval $(call MODULE_template,$(module)))) 49 | 50 | EXTRA_CFLAGS += -I$(PWD) 51 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/tmpl/old/Makefile.build: -------------------------------------------------------------------------------- 1 | ## 2 | ## A standard Makefile.build for building modules for driver disks 3 | ## 4 | 5 | include Makefile 6 | 7 | include $(TOPDIR)/Build.rules 8 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/drivers/tmpl/old/README: -------------------------------------------------------------------------------- 1 | Older driver update disks were built without using the RHEL5-style kmod RPM 2 | packages. At build time (note that this does not affect runtime), ddiskit 3 | will use the new format if an "rpm" directory exists, the old otherwise. 4 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/i386/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # $Id: Makefile,v 1.9 2012/11/27 00:49:06 phil Exp $ 3 | # 4 | # WARNING: You must be root to run this makefile. We do a lot of 5 | # mounts (over loopback) and mknods (for initrd /dev entries) so you 6 | # really need root access. 7 | # 8 | # @Copyright@ 9 | # 10 | # Rocks(r) 11 | # www.rocksclusters.org 12 | # version 6.2 (SideWinder) 13 | # version 7.0 (Manzanita) 14 | # 15 | # Copyright (c) 2000 - 2017 The Regents of the University of California. 16 | # All rights reserved. 17 | # 18 | # Redistribution and use in source and binary forms, with or without 19 | # modification, are permitted provided that the following conditions are 20 | # met: 21 | # 22 | # 1. Redistributions of source code must retain the above copyright 23 | # notice, this list of conditions and the following disclaimer. 24 | # 25 | # 2. Redistributions in binary form must reproduce the above copyright 26 | # notice unmodified and in its entirety, this list of conditions and the 27 | # following disclaimer in the documentation and/or other materials provided 28 | # with the distribution. 29 | # 30 | # 3. All advertising and press materials, printed or electronic, mentioning 31 | # features or use of this software must display the following acknowledgement: 32 | # 33 | # "This product includes software developed by the Rocks(r) 34 | # Cluster Group at the San Diego Supercomputer Center at the 35 | # University of California, San Diego and its contributors." 36 | # 37 | # 4. Except as permitted for the purposes of acknowledgment in paragraph 3, 38 | # neither the name or logo of this software nor the names of its 39 | # authors may be used to endorse or promote products derived from this 40 | # software without specific prior written permission. The name of the 41 | # software includes the following terms, and any derivatives thereof: 42 | # "Rocks", "Rocks Clusters", and "Avalanche Installer". For licensing of 43 | # the associated name, interested parties should contact Technology 44 | # Transfer & Intellectual Property Services, University of California, 45 | # San Diego, 9500 Gilman Drive, Mail Code 0910, La Jolla, CA 92093-0910, 46 | # Ph: (858) 534-5815, FAX: (858) 534-7345, E-MAIL:invent@ucsd.edu 47 | # 48 | # THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' 49 | # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, 50 | # THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 51 | # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS 52 | # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 53 | # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 54 | # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR 55 | # BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 56 | # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 57 | # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN 58 | # IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 59 | # 60 | # @Copyright@ 61 | # 62 | # $Log: Makefile,v $ 63 | # Revision 1.9 2012/11/27 00:49:06 phil 64 | # Copyright Storm for Emerald Boa 65 | # 66 | # Revision 1.8 2012/05/06 05:49:14 phil 67 | # Copyright Storm for Mamba 68 | # 69 | # Revision 1.7 2011/07/23 02:31:15 phil 70 | # Viper Copyright 71 | # 72 | # Revision 1.6 2010/09/07 23:53:23 bruno 73 | # star power for gb 74 | # 75 | # Revision 1.5 2009/05/01 19:07:21 mjk 76 | # chimi con queso 77 | # 78 | # Revision 1.4 2008/10/18 00:56:13 mjk 79 | # copyright 5.1 80 | # 81 | # Revision 1.3 2008/03/06 23:41:56 mjk 82 | # copyright storm on 83 | # 84 | # Revision 1.2 2007/06/23 04:03:49 mjk 85 | # mars hill copyright 86 | # 87 | # Revision 1.1 2007/01/11 23:18:44 bruno 88 | # first clean compile 89 | # 90 | # there is no way in hell this works 91 | # 92 | # 93 | 94 | BOOTBASE = ../../../.. 95 | LOADER = ../../loader 96 | SPLASH = ../splash 97 | 98 | include ../../version.mk 99 | include ../Boot.mk 100 | 101 | default: build 102 | 103 | build: $(DEFAULT) 104 | 105 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/i386/isolinux.cfg: -------------------------------------------------------------------------------- 1 | default internal 2 | prompt 1 3 | timeout 100 4 | display boot.msg 5 | 6 | label internal 7 | kernel vmlinuz 8 | append ramdisk_size=150000 initrd=initrd.img devfs=nomount ks ksdevice=eth0 kssendmac selinux=0 9 | 10 | label frontend 11 | kernel vmlinuz 12 | append ramdisk_size=150000 initrd=initrd.img devfs=nomount ks=cdrom:/ks.cfg kssendmac selinux=0 frontend build nowatchdog 13 | 14 | label build 15 | kernel vmlinuz 16 | append ramdisk_size=150000 initrd=initrd.img devfs=nomount ks=cdrom:/ks.cfg kssendmac selinux=0 build nowatchdog 17 | 18 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/splash/FlyingV1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rocksclusters/kernel/31e305619dff8eb32fee5d57ba3ca9eb68add5d3/src/rocks-boot/enterprise/5/images/splash/FlyingV1.jpg -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/splash/ViperLicensed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rocksclusters/kernel/31e305619dff8eb32fee5d57ba3ca9eb68add5d3/src/rocks-boot/enterprise/5/images/splash/ViperLicensed.png -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/splash/create_boot.msg.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python 2 | #$Log: create_boot.msg.py,v $ 3 | #Revision 1.2 2008/03/17 16:55:26 bruno 4 | #splash screen is done. 5 | # 6 | #Revision 1.1 2007/01/11 23:18:44 bruno 7 | #first clean compile 8 | # 9 | #there is no way in hell this works 10 | # 11 | #Revision 1.1 2005/01/03 21:22:47 bruno 12 | #first whack at RHEL 4 (nahant-beta) 13 | # 14 | #Revision 1.1 2004/11/23 02:41:14 bruno 15 | #made the kernel roll bootable. 16 | # 17 | #moved 'rocks-boot' here -- it is now uses vmlinuz and builds the initrd.img 18 | #file from the local (if present in the local RPMS directory) or from the 19 | #current distro. 20 | # 21 | #if you want to use a specific kernel, just drop it in the RPMS directory. 22 | # 23 | #Revision 1.1 2003/11/12 20:02:39 fds 24 | #Updated Dmac splash work. 25 | # 26 | #Revision 1.3 2003/08/28 20:07:26 dmac 27 | #now indents in boot.msg which makes it look better 28 | #cleaned up code 29 | # 30 | #Revision 1.2 2003/08/20 21:40:26 dmac 31 | #fixed log issue 32 | # 33 | import string 34 | import sys 35 | import os 36 | 37 | #Creates the file boot.msg, reading from a file 38 | #called message. It indents the contents, and adds 39 | #magic for syslinux to read the image logo, then saves 40 | #as a file 41 | class create_boot_msg: 42 | def open_file(self, file_path, arguments='rb'): 43 | try: 44 | fileobj=open(file_path, arguments) 45 | except: 46 | print '%s cannot be opened' % (file_path) 47 | sys.exit() 48 | 49 | return fileobj 50 | def close_file(self, fileobj): 51 | try: 52 | file_obj.close() 53 | except: 54 | print 'Error closing file' 55 | 56 | def read_file(self, fileobj): 57 | list=[] 58 | for line in fileobj.readlines(): 59 | list.append(line) 60 | return list 61 | def write_file(self, fileobj, list): 62 | for line in list: 63 | fileobj.write(line) 64 | def write_magic(self, fileobj, name_image): 65 | # clear the screen and home the cursor 66 | fileobj.write('\014\n') 67 | 68 | # a reference to the splash screen 69 | fileobj.write('\030') 70 | fileobj.write(name_image) 71 | fileobj.write('\n') 72 | 73 | def indent_list(self, list): 74 | newlist=[] 75 | #keeps track if previous line indented 76 | #1 is yes, 0 is no 77 | indented=0 78 | for line in list: 79 | #if line is supposed to be indented, 80 | #make it tabbed, else add a newline 81 | if line[0]=='\t' or line[0]==' ': 82 | line=line[1:] 83 | line=string.join(['\t',line],'') 84 | indented=1 85 | elif indented==1: 86 | line=string.join(['\n',line],'') 87 | indented=0 88 | else: 89 | pass 90 | newlist.append(line) 91 | 92 | return newlist 93 | 94 | def run(self, path_file_in, path_file_out): 95 | infile=self.open_file(path_file_in, 'rb') 96 | outfile=self.open_file(path_file_out, 'wb') 97 | 98 | messagelist=self.read_file(infile) 99 | new_messagelist=self.indent_list(messagelist) 100 | 101 | self.write_file(outfile,new_messagelist) 102 | #File name of image is assumed to be splash.lss 103 | self.write_magic(outfile, 'splash.lss') 104 | 105 | infile.close() 106 | outfile.close() 107 | 108 | if __name__=='__main__': 109 | import sys 110 | 111 | arguments='%s\nfile that contains message\n\ 112 | file that will hold message w/ special magic\n' % (sys.argv[0]) 113 | 114 | #Check to make sure there are the correct number of args 115 | if len(sys.argv)!= 3: 116 | print arguments 117 | sys.exit() 118 | 119 | boot_msg=create_boot_msg() 120 | boot_msg.run(sys.argv[1], sys.argv[2]) 121 | 122 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/splash/label.en_US.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rocksclusters/kernel/31e305619dff8eb32fee5d57ba3ca9eb68add5d3/src/rocks-boot/enterprise/5/images/splash/label.en_US.png -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/splash/label.en_US.png.5.4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rocksclusters/kernel/31e305619dff8eb32fee5d57ba3ca9eb68add5d3/src/rocks-boot/enterprise/5/images/splash/label.en_US.png.5.4 -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/splash/logoUCSD.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rocksclusters/kernel/31e305619dff8eb32fee5d57ba3ca9eb68add5d3/src/rocks-boot/enterprise/5/images/splash/logoUCSD.gif -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/splash/mamba-splash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rocksclusters/kernel/31e305619dff8eb32fee5d57ba3ca9eb68add5d3/src/rocks-boot/enterprise/5/images/splash/mamba-splash.png -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/splash/message: -------------------------------------------------------------------------------- 1 | Rocks Cluster Distribution 2 | 3 | 4 | What do you want to kickstart? 5 | 6 | - Frontend: 7 | type "frontend" 8 | 9 | - Upgrade your frontend: 10 | type "frontend upgrade" 11 | 12 | - Frontend Network Install 13 | type "frontend central=name" 14 | where name is "Rocks", or the 15 | FQDN of your central server. 16 | 17 | - Rescue 18 | type "frontend rescue" 19 | 20 | - Cluster node: 21 | do nothing or press return 22 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/splash/pngtolss: -------------------------------------------------------------------------------- 1 | #/bin/bash 2 | #$Log: pngtolss,v $ 3 | #Revision 1.1 2007/01/11 23:18:44 bruno 4 | #first clean compile 5 | # 6 | #there is no way in hell this works 7 | # 8 | #Revision 1.2 2006/09/13 00:05:15 mjk 9 | #fixup splash screen 10 | # 11 | #Revision 1.1 2005/01/03 21:22:47 bruno 12 | #first whack at RHEL 4 (nahant-beta) 13 | # 14 | #Revision 1.1 2004/11/23 02:41:14 bruno 15 | #made the kernel roll bootable. 16 | # 17 | #moved 'rocks-boot' here -- it is now uses vmlinuz and builds the initrd.img 18 | #file from the local (if present in the local RPMS directory) or from the 19 | #current distro. 20 | # 21 | #if you want to use a specific kernel, just drop it in the RPMS directory. 22 | # 23 | #Revision 1.1 2003/11/12 20:02:39 fds 24 | #Updated Dmac splash work. 25 | # 26 | #Revision 1.2 2003/08/25 19:35:46 dmac 27 | #doesn't delete temp. picture. this temp. picture is a 28 | #preview of the .lss picture 29 | # 30 | #Revision 1.1 2003/08/20 21:33:57 dmac 31 | #initial relase: converts a .png picture to .lss picture-dmac 32 | # 33 | #-helps create ROCKS boot-up logo-dmac 34 | #Converts a *.png file to a *.lss file which is used for isolinux 35 | #Currently, the background is set to white, and the text is set to black 36 | 37 | if ! [ $# -eq 2 ]; then 38 | echo "Usage: " 39 | echo ": *.png file to be converted to lss format" 40 | echo ": name of *.lss file that will be generated" 41 | exit 1 42 | fi 43 | 44 | 45 | #the temp file to hold the ppm format 46 | PPMFILE="tmp001.ppm" 47 | PNGORIG=$1 48 | LSSFILE=$2 49 | 50 | if [ " `echo $PNGORIG | grep '.png$'`" = "" ]; then 51 | echo "$PNGORIG is not a .png file" 52 | exit 1 53 | fi 54 | 55 | #Make sure the file exists 56 | if ! [ -e $PNGORIG ]; then 57 | echo "$PNGORIG does not exist" 58 | exit 1 59 | fi 60 | 61 | PNGFILE="$PNGORIG.tmp" 62 | cp $PNGORIG $PNGFILE 63 | 64 | #Convert the .png file to a .ppm file 65 | pngtopnm $PNGFILE > $PPMFILE 66 | 67 | #required because of a bug in RedHat 68 | export LANG=C 69 | 70 | 71 | #Convert the ppm file to the .lss file 72 | #'#ffffff=0' specifies that the background is white 73 | #'#000000=7' specifies that the text is black 74 | ppmtolss16 '#ffffff=0' '#000000=7' < $PPMFILE > $LSSFILE 75 | 76 | rm -f $PPMFILE $PNGFILE 77 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/splash/v.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rocksclusters/kernel/31e305619dff8eb32fee5d57ba3ca9eb68add5d3/src/rocks-boot/enterprise/5/images/splash/v.png -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/x86_64/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # $Id: Makefile,v 1.8 2012/11/27 00:49:06 phil Exp $ 3 | # 4 | # WARNING: You must be root to run this makefile. We do a lot of 5 | # mounts (over loopback) and mknods (for initrd /dev entries) so you 6 | # really need root access. 7 | # 8 | # @Copyright@ 9 | # 10 | # Rocks(r) 11 | # www.rocksclusters.org 12 | # version 6.2 (SideWinder) 13 | # version 7.0 (Manzanita) 14 | # 15 | # Copyright (c) 2000 - 2017 The Regents of the University of California. 16 | # All rights reserved. 17 | # 18 | # Redistribution and use in source and binary forms, with or without 19 | # modification, are permitted provided that the following conditions are 20 | # met: 21 | # 22 | # 1. Redistributions of source code must retain the above copyright 23 | # notice, this list of conditions and the following disclaimer. 24 | # 25 | # 2. Redistributions in binary form must reproduce the above copyright 26 | # notice unmodified and in its entirety, this list of conditions and the 27 | # following disclaimer in the documentation and/or other materials provided 28 | # with the distribution. 29 | # 30 | # 3. All advertising and press materials, printed or electronic, mentioning 31 | # features or use of this software must display the following acknowledgement: 32 | # 33 | # "This product includes software developed by the Rocks(r) 34 | # Cluster Group at the San Diego Supercomputer Center at the 35 | # University of California, San Diego and its contributors." 36 | # 37 | # 4. Except as permitted for the purposes of acknowledgment in paragraph 3, 38 | # neither the name or logo of this software nor the names of its 39 | # authors may be used to endorse or promote products derived from this 40 | # software without specific prior written permission. The name of the 41 | # software includes the following terms, and any derivatives thereof: 42 | # "Rocks", "Rocks Clusters", and "Avalanche Installer". For licensing of 43 | # the associated name, interested parties should contact Technology 44 | # Transfer & Intellectual Property Services, University of California, 45 | # San Diego, 9500 Gilman Drive, Mail Code 0910, La Jolla, CA 92093-0910, 46 | # Ph: (858) 534-5815, FAX: (858) 534-7345, E-MAIL:invent@ucsd.edu 47 | # 48 | # THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' 49 | # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, 50 | # THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 51 | # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS 52 | # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 53 | # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 54 | # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR 55 | # BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 56 | # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 57 | # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN 58 | # IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 59 | # 60 | # @Copyright@ 61 | # 62 | # $Log: Makefile,v $ 63 | # Revision 1.8 2012/11/27 00:49:06 phil 64 | # Copyright Storm for Emerald Boa 65 | # 66 | # Revision 1.7 2012/05/06 05:49:15 phil 67 | # Copyright Storm for Mamba 68 | # 69 | # Revision 1.6 2011/07/23 02:31:15 phil 70 | # Viper Copyright 71 | # 72 | # Revision 1.5 2010/09/07 23:53:23 bruno 73 | # star power for gb 74 | # 75 | # Revision 1.4 2009/05/01 19:07:21 mjk 76 | # chimi con queso 77 | # 78 | # Revision 1.3 2008/10/18 00:56:13 mjk 79 | # copyright 5.1 80 | # 81 | # Revision 1.2 2008/03/06 23:41:56 mjk 82 | # copyright storm on 83 | # 84 | # Revision 1.1 2007/08/14 22:38:24 bruno 85 | # rocks-boot compiles on RHEL 5 86 | # 87 | # 88 | 89 | BOOTBASE = ../../../.. 90 | LOADER = ../../loader 91 | SPLASH = ../splash 92 | 93 | include ../../version.mk 94 | include ../Boot.mk 95 | 96 | default: build 97 | 98 | build: $(DEFAULT) 99 | 100 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/images/x86_64/isolinux.cfg: -------------------------------------------------------------------------------- 1 | default internal 2 | prompt 1 3 | timeout 100 4 | display boot.msg 5 | 6 | label internal 7 | kernel vmlinuz 8 | append ramdisk_size=150000 initrd=initrd.img devfs=nomount ks ksdevice=eth0 kssendmac selinux=0 9 | 10 | label frontend 11 | kernel vmlinuz 12 | append ramdisk_size=150000 initrd=initrd.img devfs=nomount ks=cdrom:/ks.cfg kssendmac selinux=0 frontend build nowatchdog 13 | 14 | label build 15 | kernel vmlinuz 16 | append ramdisk_size=150000 initrd=initrd.img devfs=nomount ks=cdrom:/ks.cfg kssendmac selinux=0 build nowatchdog 17 | 18 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/loader/patch-files/anaconda-11.1.2.195/loader2/ftp.h: -------------------------------------------------------------------------------- 1 | #ifndef H_FTP 2 | #define H_FTP 3 | 4 | #include "urls.h" 5 | 6 | const char * ftpStrerror(int ftpErrno, urlprotocol protocol); 7 | 8 | #define FTPERR_BAD_SERVER_RESPONSE -1 9 | #define FTPERR_SERVER_IO_ERROR -2 10 | #define FTPERR_SERVER_TIMEOUT -3 11 | #define FTPERR_BAD_HOST_ADDR -4 12 | #define FTPERR_BAD_HOSTNAME -5 13 | #define FTPERR_FAILED_CONNECT -6 14 | #define FTPERR_FILE_IO_ERROR -7 15 | #define FTPERR_PASSIVE_ERROR -8 16 | #define FTPERR_FAILED_DATA_CONNECT -9 17 | #define FTPERR_FILE_NOT_FOUND -10 18 | #define FTPERR_TOO_MANY_CONNECTIONS -11 19 | #define FTPERR_BAD_URL -12 20 | #define FTPERR_TOO_MANY_REDIRECTS -13 21 | #define FTPERR_UNSUPPORTED_FAMILY -14 22 | #define FTPERR_PERMISSION_DENIED -15 23 | #define FTPERR_UNKNOWN -100 24 | 25 | int ftpOpen(char * host, int family, char * name, char * password, 26 | char * proxy, int port); 27 | int ftpGetFile(int sock, char * remotename, int dest); 28 | int ftpGetFileDesc(int sock, struct in6_addr host, int family, 29 | char * remotename); 30 | int ftpGetFileDone(int sock); 31 | 32 | int httpGetFileDesc(char * hostname, int port, char * remotename, char *extraHeaders); 33 | 34 | #ifdef ROCKS 35 | #include 36 | 37 | #define FTPERR_REFUSED -91 38 | #define FTPERR_CLIENT_SECURITY -92 39 | #define FTPERR_SERVER_SECURITY -93 40 | 41 | BIO* httpsGetFileDesc(char * hostname, int port, char * remotename, 42 | char *extraHeaders, int *errorcode, char **returnedHeaders); 43 | #endif 44 | 45 | #endif 46 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/loader/patch-files/anaconda-11.1.2.195/loader2/net.h: -------------------------------------------------------------------------------- 1 | #ifndef H_LOADER_NET 2 | #define H_LOADER_NET 3 | 4 | #include "loader.h" 5 | #include 6 | #include 7 | #include 8 | #include 9 | 10 | #define DHCP_METHOD_STR _("Dynamic IP configuration (DHCP)") 11 | #define MANUAL_METHOD_STR _("Manual configuration") 12 | #define AUTO_METHOD_STR _("Automatic neighbor discovery (RFC 2461)") 13 | 14 | /* generic names for array index positions in net.c */ 15 | enum { IPV4, IPV6 }; 16 | 17 | /* these match up to the radio button array index order in configureTCPIP() */ 18 | enum { IPV4_DHCP_METHOD, IPV4_MANUAL_METHOD }; 19 | enum { IPV6_AUTO_METHOD, IPV6_DHCP_METHOD, IPV6_MANUAL_METHOD }; 20 | 21 | struct networkDeviceConfig { 22 | struct pumpNetIntf dev; 23 | 24 | /* wireless settings */ 25 | /* side effect: if this is non-NULL, then assume wireless */ 26 | char * essid; 27 | char * wepkey; 28 | 29 | /* misc settings */ 30 | int isDynamic; 31 | int isiBFT; 32 | int noDns; 33 | int dhcpTimeout; 34 | int preset; 35 | int ipv4method, ipv6method; 36 | char * vendor_class; 37 | 38 | /* s390 settings */ 39 | int mtu; 40 | char *subchannels, *portname, *peerid, *nettype, *ctcprot, *layer2, *portno, *macaddr; 41 | }; 42 | 43 | struct intfconfig_s { 44 | newtComponent ipv4Entry, cidr4Entry; 45 | newtComponent ipv6Entry, cidr6Entry; 46 | newtComponent gwEntry, nsEntry; 47 | const char *ipv4, *cidr4; 48 | const char *ipv6, *cidr6; 49 | const char *gw, *ns; 50 | }; 51 | 52 | struct netconfopts { 53 | char ipv4Choice; 54 | char ipv6Choice; 55 | }; 56 | 57 | typedef int int32; 58 | 59 | int readNetConfig(char * device, struct networkDeviceConfig * dev, 60 | char * dhcpclass, int methodNum, int query); 61 | int configureTCPIP(char * device, struct networkDeviceConfig * cfg, 62 | struct networkDeviceConfig * newCfg, 63 | struct netconfopts * opts, int methodNum, int query); 64 | int manualNetConfig(char * device, struct networkDeviceConfig * cfg, 65 | struct networkDeviceConfig * newCfg, 66 | struct intfconfig_s * ipcomps, struct netconfopts * opts); 67 | void debugNetworkInfo(struct networkDeviceConfig *cfg); 68 | int configureNetwork(struct networkDeviceConfig * dev); 69 | int writeNetInfo(const char * fn, struct networkDeviceConfig * dev); 70 | int findHostAndDomain(struct networkDeviceConfig * dev); 71 | int writeResolvConf(struct networkDeviceConfig * net); 72 | extern char *netServerPrompt; 73 | int nfsGetSetup(char ** hostptr, char ** dirptr); 74 | void initLoopback(void); 75 | int chooseNetworkInterface(struct loaderData_s * loaderData); 76 | void setupNetworkDeviceConfig(struct networkDeviceConfig * cfg, 77 | struct loaderData_s * loaderData); 78 | int setupWireless(struct networkDeviceConfig *dev); 79 | 80 | void setKickstartNetwork(struct loaderData_s * loaderData, int argc, 81 | char ** argv); 82 | 83 | int kickstartNetworkUp(struct loaderData_s * loaderData, 84 | struct networkDeviceConfig *netCfgPtr); 85 | 86 | void clearInterface(char *device); 87 | int doDhcp(struct networkDeviceConfig *dev); 88 | void netlogger(void *arg, int priority, char *fmt, va_list va); 89 | void splitHostname (char *str, char **host, char **port); 90 | 91 | #ifdef ROCKS 92 | int rocksNetworkUp(struct loaderData_s * loaderData, 93 | struct networkDeviceConfig *netCfgPtr); 94 | #endif 95 | 96 | #endif 97 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/loader/patch-files/anaconda-11.1.2.195/loader2/urls.h: -------------------------------------------------------------------------------- 1 | #ifndef H_LOADER_URLS 2 | #define H_LOADER_URLS 3 | 4 | #ifdef ROCKS 5 | enum urlprotocol_t { URL_METHOD_FTP, URL_METHOD_HTTP, URL_METHOD_HTTPS }; 6 | #else 7 | enum urlprotocol_t { URL_METHOD_FTP, URL_METHOD_HTTP }; 8 | #endif 9 | typedef enum urlprotocol_t urlprotocol; 10 | 11 | struct iurlinfo { 12 | urlprotocol protocol; 13 | char * address; 14 | char * login; 15 | char * password; 16 | char * prefix; 17 | char * proxy; 18 | char * proxyPort; 19 | int ftpPort; 20 | }; 21 | 22 | int convertURLToUI(char *url, struct iurlinfo *ui); 23 | char *convertUIToURL(struct iurlinfo *ui); 24 | 25 | int setupRemote(struct iurlinfo * ui); 26 | int urlMainSetupPanel(struct iurlinfo * ui, urlprotocol protocol, 27 | char * doSecondarySetup); 28 | int urlSecondarySetupPanel(struct iurlinfo * ui, urlprotocol protocol); 29 | int urlinstStartTransfer(struct iurlinfo * ui, char * filename, 30 | char *extraHeaders); 31 | int urlinstFinishTransfer(struct iurlinfo * ui, int fd); 32 | 33 | #ifdef ROCKS 34 | #include 35 | BIO* urlinstStartSSLTransfer(struct iurlinfo * ui, char * filename, 36 | char *extraHeaders, int silentErrors, int flags, char *nextServer); 37 | int urlinstFinishSSLTransfer(BIO *sbio); 38 | 39 | int haveCertificate(); 40 | 41 | #include "loader.h" 42 | int getCert(struct loaderData_s *loaderData); 43 | #endif 44 | 45 | #endif 46 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/loader/patch-files/anaconda-11.1.2.209/loader2/ftp.h: -------------------------------------------------------------------------------- 1 | #ifndef H_FTP 2 | #define H_FTP 3 | 4 | #include "urls.h" 5 | 6 | const char * ftpStrerror(int ftpErrno, urlprotocol protocol); 7 | 8 | #define FTPERR_BAD_SERVER_RESPONSE -1 9 | #define FTPERR_SERVER_IO_ERROR -2 10 | #define FTPERR_SERVER_TIMEOUT -3 11 | #define FTPERR_BAD_HOST_ADDR -4 12 | #define FTPERR_BAD_HOSTNAME -5 13 | #define FTPERR_FAILED_CONNECT -6 14 | #define FTPERR_FILE_IO_ERROR -7 15 | #define FTPERR_PASSIVE_ERROR -8 16 | #define FTPERR_FAILED_DATA_CONNECT -9 17 | #define FTPERR_FILE_NOT_FOUND -10 18 | #define FTPERR_TOO_MANY_CONNECTIONS -11 19 | #define FTPERR_BAD_URL -12 20 | #define FTPERR_TOO_MANY_REDIRECTS -13 21 | #define FTPERR_UNSUPPORTED_FAMILY -14 22 | #define FTPERR_PERMISSION_DENIED -15 23 | #define FTPERR_UNKNOWN -100 24 | 25 | int ftpOpen(char * host, int family, char * name, char * password, 26 | char * proxy, int port); 27 | int ftpGetFile(int sock, char * remotename, int dest); 28 | int ftpGetFileDesc(int sock, struct in6_addr host, int family, 29 | char * remotename); 30 | int ftpGetFileDone(int sock); 31 | 32 | int httpGetFileDesc(char * hostname, int port, char * remotename, char *extraHeaders); 33 | 34 | #ifdef ROCKS 35 | #include 36 | 37 | #define FTPERR_REFUSED -91 38 | #define FTPERR_CLIENT_SECURITY -92 39 | #define FTPERR_SERVER_SECURITY -93 40 | 41 | BIO* httpsGetFileDesc(char * hostname, int port, char * remotename, 42 | char *extraHeaders, int *errorcode, char **returnedHeaders); 43 | #endif 44 | 45 | #endif 46 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/loader/patch-files/anaconda-11.1.2.209/loader2/net.h: -------------------------------------------------------------------------------- 1 | #ifndef H_LOADER_NET 2 | #define H_LOADER_NET 3 | 4 | #include "loader.h" 5 | #include 6 | #include 7 | #include 8 | #include 9 | 10 | #define DHCP_METHOD_STR _("Dynamic IP configuration (DHCP)") 11 | #define MANUAL_METHOD_STR _("Manual configuration") 12 | #define AUTO_METHOD_STR _("Automatic neighbor discovery (RFC 2461)") 13 | 14 | /* generic names for array index positions in net.c */ 15 | enum { IPV4, IPV6 }; 16 | 17 | /* these match up to the radio button array index order in configureTCPIP() */ 18 | enum { IPV4_DHCP_METHOD, IPV4_MANUAL_METHOD }; 19 | enum { IPV6_AUTO_METHOD, IPV6_DHCP_METHOD, IPV6_MANUAL_METHOD }; 20 | 21 | struct networkDeviceConfig { 22 | struct pumpNetIntf dev; 23 | 24 | /* wireless settings */ 25 | /* side effect: if this is non-NULL, then assume wireless */ 26 | char * essid; 27 | char * wepkey; 28 | 29 | /* misc settings */ 30 | int isDynamic; 31 | int isiBFT; 32 | int noDns; 33 | int dhcpTimeout; 34 | int preset; 35 | int ipv4method, ipv6method; 36 | char * vendor_class; 37 | 38 | /* s390 settings */ 39 | int mtu; 40 | char *subchannels, *portname, *peerid, *nettype, *ctcprot, *layer2, *portno, *macaddr; 41 | }; 42 | 43 | struct intfconfig_s { 44 | newtComponent ipv4Entry, cidr4Entry; 45 | newtComponent ipv6Entry, cidr6Entry; 46 | newtComponent gwEntry, nsEntry; 47 | const char *ipv4, *cidr4; 48 | const char *ipv6, *cidr6; 49 | const char *gw, *ns; 50 | }; 51 | 52 | struct netconfopts { 53 | char ipv4Choice; 54 | char ipv6Choice; 55 | }; 56 | 57 | typedef int int32; 58 | 59 | int readNetConfig(char * device, struct networkDeviceConfig * dev, 60 | char * dhcpclass, int methodNum, int query); 61 | int configureTCPIP(char * device, struct networkDeviceConfig * cfg, 62 | struct networkDeviceConfig * newCfg, 63 | struct netconfopts * opts, int methodNum, int query); 64 | int manualNetConfig(char * device, struct networkDeviceConfig * cfg, 65 | struct networkDeviceConfig * newCfg, 66 | struct intfconfig_s * ipcomps, struct netconfopts * opts); 67 | void debugNetworkInfo(struct networkDeviceConfig *cfg); 68 | int configureNetwork(struct networkDeviceConfig * dev); 69 | int writeNetInfo(const char * fn, struct networkDeviceConfig * dev); 70 | int findHostAndDomain(struct networkDeviceConfig * dev); 71 | int writeResolvConf(struct networkDeviceConfig * net); 72 | extern char *netServerPrompt; 73 | extern char *nfsServerPrompt; 74 | int nfsGetSetup(char ** hostptr, char ** dirptr, char ** optsptr); 75 | void initLoopback(void); 76 | int chooseNetworkInterface(struct loaderData_s * loaderData); 77 | void setupNetworkDeviceConfig(struct networkDeviceConfig * cfg, 78 | struct loaderData_s * loaderData); 79 | int setupWireless(struct networkDeviceConfig *dev); 80 | 81 | void setKickstartNetwork(struct loaderData_s * loaderData, int argc, 82 | char ** argv); 83 | 84 | int kickstartNetworkUp(struct loaderData_s * loaderData, 85 | struct networkDeviceConfig *netCfgPtr); 86 | 87 | void clearInterface(char *device); 88 | int doDhcp(struct networkDeviceConfig *dev); 89 | void netlogger(void *arg, int priority, char *fmt, va_list va); 90 | void splitHostname (char *str, char **host, char **port); 91 | 92 | #ifdef ROCKS 93 | int rocksNetworkUp(struct loaderData_s * loaderData, 94 | struct networkDeviceConfig *netCfgPtr); 95 | #endif 96 | 97 | #endif 98 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/loader/patch-files/anaconda-11.1.2.209/loader2/urls.h: -------------------------------------------------------------------------------- 1 | #ifndef H_LOADER_URLS 2 | #define H_LOADER_URLS 3 | 4 | #ifdef ROCKS 5 | enum urlprotocol_t { URL_METHOD_FTP, URL_METHOD_HTTP, URL_METHOD_HTTPS }; 6 | #else 7 | enum urlprotocol_t { URL_METHOD_FTP, URL_METHOD_HTTP }; 8 | #endif 9 | typedef enum urlprotocol_t urlprotocol; 10 | 11 | struct iurlinfo { 12 | urlprotocol protocol; 13 | char * address; 14 | char * login; 15 | char * password; 16 | char * prefix; 17 | char * proxy; 18 | char * proxyPort; 19 | int ftpPort; 20 | }; 21 | 22 | int convertURLToUI(char *url, struct iurlinfo *ui); 23 | char *convertUIToURL(struct iurlinfo *ui); 24 | 25 | int setupRemote(struct iurlinfo * ui); 26 | int urlMainSetupPanel(struct iurlinfo * ui, urlprotocol protocol, 27 | char * doSecondarySetup); 28 | int urlSecondarySetupPanel(struct iurlinfo * ui, urlprotocol protocol); 29 | int urlinstStartTransfer(struct iurlinfo * ui, char * filename, 30 | char *extraHeaders); 31 | int urlinstFinishTransfer(struct iurlinfo * ui, int fd); 32 | 33 | #ifdef ROCKS 34 | #include 35 | BIO* urlinstStartSSLTransfer(struct iurlinfo * ui, char * filename, 36 | char *extraHeaders, int silentErrors, int flags, char *nextServer); 37 | int urlinstFinishSSLTransfer(BIO *sbio); 38 | 39 | int haveCertificate(); 40 | 41 | #include "loader.h" 42 | int getCert(struct loaderData_s *loaderData); 43 | #endif 44 | 45 | #endif 46 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/loader/patch-files/anaconda-11.1.2.224/loader2/ftp.h: -------------------------------------------------------------------------------- 1 | #ifndef H_FTP 2 | #define H_FTP 3 | 4 | #include "urls.h" 5 | 6 | const char * ftpStrerror(int ftpErrno, urlprotocol protocol); 7 | 8 | #define FTPERR_BAD_SERVER_RESPONSE -1 9 | #define FTPERR_SERVER_IO_ERROR -2 10 | #define FTPERR_SERVER_TIMEOUT -3 11 | #define FTPERR_BAD_HOST_ADDR -4 12 | #define FTPERR_BAD_HOSTNAME -5 13 | #define FTPERR_FAILED_CONNECT -6 14 | #define FTPERR_FILE_IO_ERROR -7 15 | #define FTPERR_PASSIVE_ERROR -8 16 | #define FTPERR_FAILED_DATA_CONNECT -9 17 | #define FTPERR_FILE_NOT_FOUND -10 18 | #define FTPERR_TOO_MANY_CONNECTIONS -11 19 | #define FTPERR_BAD_URL -12 20 | #define FTPERR_TOO_MANY_REDIRECTS -13 21 | #define FTPERR_UNSUPPORTED_FAMILY -14 22 | #define FTPERR_PERMISSION_DENIED -15 23 | #define FTPERR_UNKNOWN -100 24 | 25 | int ftpOpen(char * host, int family, char * name, char * password, 26 | char * proxy, int port); 27 | int ftpGetFile(int sock, char * remotename, int dest); 28 | int ftpGetFileDesc(int sock, struct in6_addr host, int family, 29 | char * remotename); 30 | int ftpGetFileDone(int sock); 31 | 32 | int httpGetFileDesc(char * hostname, int port, char * remotename, char *extraHeaders); 33 | 34 | #ifdef ROCKS 35 | #include 36 | 37 | #define FTPERR_REFUSED -91 38 | #define FTPERR_CLIENT_SECURITY -92 39 | #define FTPERR_SERVER_SECURITY -93 40 | 41 | BIO* httpsGetFileDesc(char * hostname, int port, char * remotename, 42 | char *extraHeaders, int *errorcode, char **returnedHeaders); 43 | #endif /* ROCKS */ 44 | 45 | #endif 46 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/loader/patch-files/anaconda-11.1.2.224/loader2/net.h: -------------------------------------------------------------------------------- 1 | #ifndef H_LOADER_NET 2 | #define H_LOADER_NET 3 | 4 | #include "loader.h" 5 | #include 6 | #include 7 | #include 8 | #include 9 | 10 | #define DHCP_METHOD_STR _("Dynamic IP configuration (DHCP)") 11 | #define MANUAL_METHOD_STR _("Manual configuration") 12 | #define AUTO_METHOD_STR _("Automatic neighbor discovery (RFC 2461)") 13 | 14 | /* generic names for array index positions in net.c */ 15 | enum { IPV4, IPV6 }; 16 | 17 | /* these match up to the radio button array index order in configureTCPIP() */ 18 | enum { IPV4_DHCP_METHOD, IPV4_MANUAL_METHOD }; 19 | enum { IPV6_AUTO_METHOD, IPV6_DHCP_METHOD, IPV6_MANUAL_METHOD }; 20 | 21 | struct networkDeviceConfig { 22 | struct pumpNetIntf dev; 23 | 24 | /* wireless settings */ 25 | /* side effect: if this is non-NULL, then assume wireless */ 26 | char * essid; 27 | char * wepkey; 28 | 29 | /* misc settings */ 30 | int isDynamic; 31 | int isiBFT; 32 | int noDns; 33 | int dhcpTimeout; 34 | int preset; 35 | int ipv4method, ipv6method; 36 | char * vendor_class; 37 | 38 | /* s390 settings */ 39 | int mtu; 40 | char *subchannels, *portname, *peerid, *nettype, *ctcprot, *layer2, *portno, *macaddr; 41 | }; 42 | 43 | struct intfconfig_s { 44 | newtComponent ipv4Entry, cidr4Entry; 45 | newtComponent ipv6Entry, cidr6Entry; 46 | newtComponent gwEntry, nsEntry; 47 | const char *ipv4, *cidr4; 48 | const char *ipv6, *cidr6; 49 | const char *gw, *ns; 50 | }; 51 | 52 | struct netconfopts { 53 | char ipv4Choice; 54 | char ipv6Choice; 55 | }; 56 | 57 | typedef int int32; 58 | 59 | int readNetConfig(char * device, struct networkDeviceConfig * dev, 60 | char * dhcpclass, int methodNum, int query); 61 | int configureTCPIP(char * device, struct networkDeviceConfig * cfg, 62 | struct networkDeviceConfig * newCfg, 63 | struct netconfopts * opts, int methodNum, int query); 64 | int manualNetConfig(char * device, struct networkDeviceConfig * cfg, 65 | struct networkDeviceConfig * newCfg, 66 | struct intfconfig_s * ipcomps, struct netconfopts * opts); 67 | void debugNetworkInfo(struct networkDeviceConfig *cfg); 68 | int configureNetwork(struct networkDeviceConfig * dev); 69 | int writeNetInfo(const char * fn, struct networkDeviceConfig * dev); 70 | int findHostAndDomain(struct networkDeviceConfig * dev); 71 | int writeResolvConf(struct networkDeviceConfig * net); 72 | extern char *netServerPrompt; 73 | extern char *nfsServerPrompt; 74 | int nfsGetSetup(char ** hostptr, char ** dirptr, char ** optsptr); 75 | void initLoopback(void); 76 | int chooseNetworkInterface(struct loaderData_s * loaderData); 77 | void setupNetworkDeviceConfig(struct networkDeviceConfig * cfg, 78 | struct loaderData_s * loaderData); 79 | int setupWireless(struct networkDeviceConfig *dev); 80 | 81 | void setKickstartNetwork(struct loaderData_s * loaderData, int argc, 82 | char ** argv); 83 | 84 | int kickstartNetworkUp(struct loaderData_s * loaderData, 85 | struct networkDeviceConfig *netCfgPtr); 86 | 87 | void clearInterface(char *device); 88 | int doDhcp(struct networkDeviceConfig *dev); 89 | void netlogger(void *arg, int priority, char *fmt, va_list va); 90 | void splitHostname (char *str, char **host, char **port); 91 | 92 | #ifdef ROCKS 93 | int rocksNetworkUp(struct loaderData_s * loaderData, 94 | struct networkDeviceConfig *netCfgPtr); 95 | #endif /* ROCKS */ 96 | 97 | #endif 98 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/loader/patch-files/anaconda-11.1.2.224/loader2/urls.h: -------------------------------------------------------------------------------- 1 | #ifndef H_LOADER_URLS 2 | #define H_LOADER_URLS 3 | 4 | 5 | #ifdef ROCKS 6 | enum urlprotocol_t { URL_METHOD_FTP, URL_METHOD_HTTP, URL_METHOD_HTTPS }; 7 | #else 8 | enum urlprotocol_t { URL_METHOD_FTP, URL_METHOD_HTTP }; 9 | #endif /* ROCKS */ 10 | typedef enum urlprotocol_t urlprotocol; 11 | 12 | struct iurlinfo { 13 | urlprotocol protocol; 14 | char * address; 15 | char * login; 16 | char * password; 17 | char * prefix; 18 | char * proxy; 19 | char * proxyPort; 20 | int ftpPort; 21 | }; 22 | 23 | int convertURLToUI(char *url, struct iurlinfo *ui); 24 | char *convertUIToURL(struct iurlinfo *ui); 25 | 26 | int setupRemote(struct iurlinfo * ui); 27 | int urlMainSetupPanel(struct iurlinfo * ui, urlprotocol protocol, 28 | char * doSecondarySetup); 29 | int urlSecondarySetupPanel(struct iurlinfo * ui, urlprotocol protocol); 30 | int urlinstStartTransfer(struct iurlinfo * ui, char * filename, 31 | char *extraHeaders); 32 | int urlinstFinishTransfer(struct iurlinfo * ui, int fd); 33 | 34 | 35 | #ifdef ROCKS 36 | #include 37 | BIO* urlinstStartSSLTransfer(struct iurlinfo * ui, char * filename, 38 | char *extraHeaders, int silentErrors, int flags, char *nextServer); 39 | int urlinstFinishSSLTransfer(BIO *sbio); 40 | 41 | int haveCertificate(); 42 | 43 | #include "loader.h" 44 | int getCert(struct loaderData_s *loaderData); 45 | #endif /* ROCKS */ 46 | 47 | #endif 48 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/loader/patch-files/anaconda-11.1.2.242/loader2/ftp.h: -------------------------------------------------------------------------------- 1 | #ifndef H_FTP 2 | #define H_FTP 3 | 4 | #include "urls.h" 5 | 6 | const char * ftpStrerror(int ftpErrno, urlprotocol protocol); 7 | 8 | #define FTPERR_BAD_SERVER_RESPONSE -1 9 | #define FTPERR_SERVER_IO_ERROR -2 10 | #define FTPERR_SERVER_TIMEOUT -3 11 | #define FTPERR_BAD_HOST_ADDR -4 12 | #define FTPERR_BAD_HOSTNAME -5 13 | #define FTPERR_FAILED_CONNECT -6 14 | #define FTPERR_FILE_IO_ERROR -7 15 | #define FTPERR_PASSIVE_ERROR -8 16 | #define FTPERR_FAILED_DATA_CONNECT -9 17 | #define FTPERR_FILE_NOT_FOUND -10 18 | #define FTPERR_TOO_MANY_CONNECTIONS -11 19 | #define FTPERR_BAD_URL -12 20 | #define FTPERR_TOO_MANY_REDIRECTS -13 21 | #define FTPERR_UNSUPPORTED_FAMILY -14 22 | #define FTPERR_PERMISSION_DENIED -15 23 | #define FTPERR_UNKNOWN -100 24 | 25 | int ftpOpen(char * host, int family, char * name, char * password, 26 | char * proxy, int port); 27 | int ftpGetFile(int sock, char * remotename, int dest); 28 | int ftpGetFileDesc(int sock, struct in6_addr host, int family, 29 | char * remotename); 30 | int ftpGetFileDone(int sock); 31 | 32 | int httpGetFileDesc(char * hostname, int port, char * remotename, char *extraHeaders); 33 | 34 | #ifdef ROCKS 35 | #include 36 | 37 | #define FTPERR_REFUSED -91 38 | #define FTPERR_CLIENT_SECURITY -92 39 | #define FTPERR_SERVER_SECURITY -93 40 | 41 | BIO* httpsGetFileDesc(char * hostname, int port, char * remotename, 42 | char *extraHeaders, int *errorcode, char **returnedHeaders); 43 | #endif /* ROCKS */ 44 | 45 | #endif 46 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/loader/patch-files/anaconda-11.1.2.242/loader2/net.h: -------------------------------------------------------------------------------- 1 | #ifndef H_LOADER_NET 2 | #define H_LOADER_NET 3 | 4 | #include "loader.h" 5 | #include 6 | #include 7 | #include 8 | #include 9 | 10 | #define DHCP_METHOD_STR _("Dynamic IP configuration (DHCP)") 11 | #define MANUAL_METHOD_STR _("Manual configuration") 12 | #define AUTO_METHOD_STR _("Automatic neighbor discovery (RFC 2461)") 13 | 14 | /* generic names for array index positions in net.c */ 15 | enum { IPV4, IPV6 }; 16 | 17 | /* these match up to the radio button array index order in configureTCPIP() */ 18 | enum { IPV4_DHCP_METHOD, IPV4_MANUAL_METHOD }; 19 | enum { IPV6_AUTO_METHOD, IPV6_DHCP_METHOD, IPV6_MANUAL_METHOD }; 20 | 21 | struct networkDeviceConfig { 22 | struct pumpNetIntf dev; 23 | 24 | /* wireless settings */ 25 | /* side effect: if this is non-NULL, then assume wireless */ 26 | char * essid; 27 | char * wepkey; 28 | 29 | /* misc settings */ 30 | int isDynamic; 31 | int isiBFT; 32 | int noDns; 33 | int dhcpTimeout; 34 | int preset; 35 | int ipv4method, ipv6method; 36 | char * vendor_class; 37 | 38 | /* s390 settings */ 39 | int mtu; 40 | char *subchannels, *portname, *peerid, *nettype, *ctcprot, *layer2, *portno, *macaddr; 41 | }; 42 | 43 | struct intfconfig_s { 44 | newtComponent ipv4Entry, cidr4Entry; 45 | newtComponent ipv6Entry, cidr6Entry; 46 | newtComponent gwEntry, nsEntry; 47 | const char *ipv4, *cidr4; 48 | const char *ipv6, *cidr6; 49 | const char *gw, *ns; 50 | }; 51 | 52 | struct netconfopts { 53 | char ipv4Choice; 54 | char ipv6Choice; 55 | }; 56 | 57 | typedef int int32; 58 | 59 | int readNetConfig(char * device, struct networkDeviceConfig * dev, 60 | char * dhcpclass, int methodNum, int query); 61 | int configureTCPIP(char * device, struct networkDeviceConfig * cfg, 62 | struct networkDeviceConfig * newCfg, 63 | struct netconfopts * opts, int methodNum, int query); 64 | int manualNetConfig(char * device, struct networkDeviceConfig * cfg, 65 | struct networkDeviceConfig * newCfg, 66 | struct intfconfig_s * ipcomps, struct netconfopts * opts); 67 | void debugNetworkInfo(struct networkDeviceConfig *cfg); 68 | int configureNetwork(struct networkDeviceConfig * dev); 69 | int writeNetInfo(const char * fn, struct networkDeviceConfig * dev); 70 | int findHostAndDomain(struct networkDeviceConfig * dev); 71 | int writeResolvConf(struct networkDeviceConfig * net); 72 | extern char *netServerPrompt; 73 | extern char *nfsServerPrompt; 74 | int nfsGetSetup(char ** hostptr, char ** dirptr, char ** optsptr); 75 | void initLoopback(void); 76 | int chooseNetworkInterface(struct loaderData_s * loaderData); 77 | void setupNetworkDeviceConfig(struct networkDeviceConfig * cfg, 78 | struct loaderData_s * loaderData); 79 | int setupWireless(struct networkDeviceConfig *dev); 80 | 81 | void setKickstartNetwork(struct loaderData_s * loaderData, int argc, 82 | char ** argv); 83 | 84 | int kickstartNetworkUp(struct loaderData_s * loaderData, 85 | struct networkDeviceConfig *netCfgPtr); 86 | 87 | void clearInterface(char *device); 88 | int doDhcp(struct networkDeviceConfig *dev); 89 | void netlogger(void *arg, int priority, char *fmt, va_list va); 90 | void splitHostname (char *str, char **host, char **port); 91 | 92 | #ifdef ROCKS 93 | int rocksNetworkUp(struct loaderData_s * loaderData, 94 | struct networkDeviceConfig *netCfgPtr); 95 | #endif /* ROCKS */ 96 | 97 | #endif 98 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/loader/patch-files/anaconda-11.1.2.242/loader2/urls.h: -------------------------------------------------------------------------------- 1 | #ifndef H_LOADER_URLS 2 | #define H_LOADER_URLS 3 | 4 | #ifdef ROCKS 5 | enum urlprotocol_t { URL_METHOD_FTP, URL_METHOD_HTTP, URL_METHOD_HTTPS }; 6 | #else 7 | enum urlprotocol_t { URL_METHOD_FTP, URL_METHOD_HTTP }; 8 | #endif /* ROCKS */ 9 | typedef enum urlprotocol_t urlprotocol; 10 | 11 | struct iurlinfo { 12 | urlprotocol protocol; 13 | char * address; 14 | char * login; 15 | char * password; 16 | char * prefix; 17 | char * proxy; 18 | char * proxyPort; 19 | int ftpPort; 20 | }; 21 | 22 | int convertURLToUI(char *url, struct iurlinfo *ui); 23 | char *convertUIToURL(struct iurlinfo *ui); 24 | 25 | int setupRemote(struct iurlinfo * ui); 26 | int urlMainSetupPanel(struct iurlinfo * ui, urlprotocol protocol, 27 | char * doSecondarySetup); 28 | int urlSecondarySetupPanel(struct iurlinfo * ui, urlprotocol protocol); 29 | int urlinstStartTransfer(struct iurlinfo * ui, char * filename, 30 | char *extraHeaders); 31 | int urlinstFinishTransfer(struct iurlinfo * ui, int fd); 32 | 33 | #ifdef ROCKS 34 | #include 35 | BIO* urlinstStartSSLTransfer(struct iurlinfo * ui, char * filename, 36 | char *extraHeaders, int silentErrors, int flags, char *nextServer); 37 | int urlinstFinishSSLTransfer(BIO *sbio); 38 | 39 | int haveCertificate(); 40 | 41 | #include "loader.h" 42 | int getCert(struct loaderData_s *loaderData); 43 | #endif /* ROCKS */ 44 | 45 | #endif 46 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/loader/patch-files/anaconda-11.1.2.259/loader2/ftp.h: -------------------------------------------------------------------------------- 1 | #ifndef H_FTP 2 | #define H_FTP 3 | 4 | #include "urls.h" 5 | 6 | const char * ftpStrerror(int ftpErrno, urlprotocol protocol); 7 | 8 | #define FTPERR_BAD_SERVER_RESPONSE -1 9 | #define FTPERR_SERVER_IO_ERROR -2 10 | #define FTPERR_SERVER_TIMEOUT -3 11 | #define FTPERR_BAD_HOST_ADDR -4 12 | #define FTPERR_BAD_HOSTNAME -5 13 | #define FTPERR_FAILED_CONNECT -6 14 | #define FTPERR_FILE_IO_ERROR -7 15 | #define FTPERR_PASSIVE_ERROR -8 16 | #define FTPERR_FAILED_DATA_CONNECT -9 17 | #define FTPERR_FILE_NOT_FOUND -10 18 | #define FTPERR_TOO_MANY_CONNECTIONS -11 19 | #define FTPERR_BAD_URL -12 20 | #define FTPERR_TOO_MANY_REDIRECTS -13 21 | #define FTPERR_UNSUPPORTED_FAMILY -14 22 | #define FTPERR_PERMISSION_DENIED -15 23 | #define FTPERR_UNKNOWN -100 24 | 25 | int ftpOpen(char * host, int family, char * name, char * password, 26 | char * proxy, int port); 27 | int ftpGetFile(int sock, char * remotename, int dest); 28 | int ftpGetFileDesc(int sock, struct in6_addr host, int family, 29 | char * remotename); 30 | int ftpGetFileDone(int sock); 31 | 32 | int httpGetFileDesc(char * hostname, int port, char * remotename, char *extraHeaders); 33 | 34 | #ifdef ROCKS 35 | #include 36 | 37 | #define FTPERR_REFUSED -91 38 | #define FTPERR_CLIENT_SECURITY -92 39 | #define FTPERR_SERVER_SECURITY -93 40 | 41 | BIO* httpsGetFileDesc(char * hostname, int port, char * remotename, 42 | char *extraHeaders, int *errorcode, char **returnedHeaders); 43 | #endif /* ROCKS */ 44 | 45 | #endif 46 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/loader/patch-files/anaconda-11.1.2.259/loader2/net.h: -------------------------------------------------------------------------------- 1 | #ifndef H_LOADER_NET 2 | #define H_LOADER_NET 3 | 4 | #include "loader.h" 5 | #include 6 | #include 7 | #include 8 | #include 9 | 10 | #define DHCP_METHOD_STR _("Dynamic IP configuration (DHCP)") 11 | #define MANUAL_METHOD_STR _("Manual configuration") 12 | #define AUTO_METHOD_STR _("Automatic neighbor discovery (RFC 2461)") 13 | 14 | /* generic names for array index positions in net.c */ 15 | enum { IPV4, IPV6 }; 16 | 17 | /* these match up to the radio button array index order in configureTCPIP() */ 18 | enum { IPV4_DHCP_METHOD, IPV4_MANUAL_METHOD }; 19 | enum { IPV6_AUTO_METHOD, IPV6_DHCP_METHOD, IPV6_MANUAL_METHOD }; 20 | 21 | struct networkDeviceConfig { 22 | struct pumpNetIntf dev; 23 | 24 | /* wireless settings */ 25 | /* side effect: if this is non-NULL, then assume wireless */ 26 | char * essid; 27 | char * wepkey; 28 | 29 | /* misc settings */ 30 | int isDynamic; 31 | int isiBFT; 32 | int noDns; 33 | int dhcpTimeout; 34 | int preset; 35 | int ipv4method, ipv6method; 36 | char * vendor_class; 37 | 38 | /* s390 settings */ 39 | int mtu; 40 | char *subchannels, *portname, *peerid, *nettype, *ctcprot, *layer2, *portno, *macaddr; 41 | }; 42 | 43 | struct intfconfig_s { 44 | newtComponent ipv4Entry, cidr4Entry; 45 | newtComponent ipv6Entry, cidr6Entry; 46 | newtComponent gwEntry, nsEntry; 47 | const char *ipv4, *cidr4; 48 | const char *ipv6, *cidr6; 49 | const char *gw, *ns; 50 | }; 51 | 52 | struct netconfopts { 53 | char ipv4Choice; 54 | char ipv6Choice; 55 | }; 56 | 57 | typedef int int32; 58 | 59 | int readNetConfig(char * device, struct networkDeviceConfig * dev, 60 | char * dhcpclass, int methodNum, int query); 61 | int configureTCPIP(char * device, struct networkDeviceConfig * cfg, 62 | struct networkDeviceConfig * newCfg, 63 | struct netconfopts * opts, int methodNum, int query); 64 | int manualNetConfig(char * device, struct networkDeviceConfig * cfg, 65 | struct networkDeviceConfig * newCfg, 66 | struct intfconfig_s * ipcomps, struct netconfopts * opts); 67 | void debugNetworkInfo(struct networkDeviceConfig *cfg); 68 | int configureNetwork(struct networkDeviceConfig * dev); 69 | int writeNetInfo(const char * fn, struct networkDeviceConfig * dev); 70 | int findHostAndDomain(struct networkDeviceConfig * dev); 71 | int writeResolvConf(struct networkDeviceConfig * net); 72 | extern char *netServerPrompt; 73 | extern char *nfsServerPrompt; 74 | int nfsGetSetup(char ** hostptr, char ** dirptr, char ** optsptr); 75 | void initLoopback(void); 76 | int chooseNetworkInterface(struct loaderData_s * loaderData); 77 | void setupNetworkDeviceConfig(struct networkDeviceConfig * cfg, 78 | struct loaderData_s * loaderData); 79 | int setupWireless(struct networkDeviceConfig *dev); 80 | 81 | void setKickstartNetwork(struct loaderData_s * loaderData, int argc, 82 | char ** argv); 83 | 84 | int kickstartNetworkUp(struct loaderData_s * loaderData, 85 | struct networkDeviceConfig *netCfgPtr); 86 | 87 | void clearInterface(char *device); 88 | int doDhcp(struct networkDeviceConfig *dev); 89 | void netlogger(void *arg, int priority, char *fmt, va_list va); 90 | void splitHostname (char *str, char **host, char **port); 91 | 92 | #ifdef ROCKS 93 | int rocksNetworkUp(struct loaderData_s * loaderData, 94 | struct networkDeviceConfig *netCfgPtr); 95 | #endif /* ROCKS */ 96 | 97 | #endif 98 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/loader/patch-files/anaconda-11.1.2.259/loader2/urls.h: -------------------------------------------------------------------------------- 1 | #ifndef H_LOADER_URLS 2 | #define H_LOADER_URLS 3 | 4 | #ifdef ROCKS 5 | enum urlprotocol_t { URL_METHOD_FTP, URL_METHOD_HTTP, URL_METHOD_HTTPS }; 6 | #else 7 | enum urlprotocol_t { URL_METHOD_FTP, URL_METHOD_HTTP }; 8 | #endif /* ROCKS */ 9 | typedef enum urlprotocol_t urlprotocol; 10 | 11 | struct iurlinfo { 12 | urlprotocol protocol; 13 | char * address; 14 | char * login; 15 | char * password; 16 | char * prefix; 17 | char * proxy; 18 | char * proxyPort; 19 | int ftpPort; 20 | }; 21 | 22 | int convertURLToUI(char *url, struct iurlinfo *ui); 23 | char *convertUIToURL(struct iurlinfo *ui); 24 | 25 | int setupRemote(struct iurlinfo * ui); 26 | int urlMainSetupPanel(struct iurlinfo * ui, urlprotocol protocol, 27 | char * doSecondarySetup); 28 | int urlSecondarySetupPanel(struct iurlinfo * ui, urlprotocol protocol); 29 | int urlinstStartTransfer(struct iurlinfo * ui, char * filename, 30 | char *extraHeaders); 31 | int urlinstFinishTransfer(struct iurlinfo * ui, int fd); 32 | 33 | #ifdef ROCKS 34 | #include 35 | BIO* urlinstStartSSLTransfer(struct iurlinfo * ui, char * filename, 36 | char *extraHeaders, int silentErrors, int flags, char *nextServer); 37 | int urlinstFinishSSLTransfer(BIO *sbio); 38 | 39 | int haveCertificate(); 40 | 41 | #include "loader.h" 42 | int getCert(struct loaderData_s *loaderData); 43 | #endif /* ROCKS */ 44 | 45 | #endif 46 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/5/version.mk: -------------------------------------------------------------------------------- 1 | ANACONDA_VERSION = 11.1.2.259 2 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/6/images/i386/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # $Id: Makefile,v 1.3 2012/11/27 00:49:06 phil Exp $ 3 | # 4 | # WARNING: You must be root to run this makefile. We do a lot of 5 | # mounts (over loopback) and mknods (for initrd /dev entries) so you 6 | # really need root access. 7 | # 8 | # @Copyright@ 9 | # 10 | # Rocks(r) 11 | # www.rocksclusters.org 12 | # version 6.2 (SideWinder) 13 | # version 7.0 (Manzanita) 14 | # 15 | # Copyright (c) 2000 - 2017 The Regents of the University of California. 16 | # All rights reserved. 17 | # 18 | # Redistribution and use in source and binary forms, with or without 19 | # modification, are permitted provided that the following conditions are 20 | # met: 21 | # 22 | # 1. Redistributions of source code must retain the above copyright 23 | # notice, this list of conditions and the following disclaimer. 24 | # 25 | # 2. Redistributions in binary form must reproduce the above copyright 26 | # notice unmodified and in its entirety, this list of conditions and the 27 | # following disclaimer in the documentation and/or other materials provided 28 | # with the distribution. 29 | # 30 | # 3. All advertising and press materials, printed or electronic, mentioning 31 | # features or use of this software must display the following acknowledgement: 32 | # 33 | # "This product includes software developed by the Rocks(r) 34 | # Cluster Group at the San Diego Supercomputer Center at the 35 | # University of California, San Diego and its contributors." 36 | # 37 | # 4. Except as permitted for the purposes of acknowledgment in paragraph 3, 38 | # neither the name or logo of this software nor the names of its 39 | # authors may be used to endorse or promote products derived from this 40 | # software without specific prior written permission. The name of the 41 | # software includes the following terms, and any derivatives thereof: 42 | # "Rocks", "Rocks Clusters", and "Avalanche Installer". For licensing of 43 | # the associated name, interested parties should contact Technology 44 | # Transfer & Intellectual Property Services, University of California, 45 | # San Diego, 9500 Gilman Drive, Mail Code 0910, La Jolla, CA 92093-0910, 46 | # Ph: (858) 534-5815, FAX: (858) 534-7345, E-MAIL:invent@ucsd.edu 47 | # 48 | # THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' 49 | # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, 50 | # THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 51 | # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS 52 | # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 53 | # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 54 | # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR 55 | # BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 56 | # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 57 | # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN 58 | # IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 59 | # 60 | # @Copyright@ 61 | # 62 | # $Log: Makefile,v $ 63 | # Revision 1.3 2012/11/27 00:49:06 phil 64 | # Copyright Storm for Emerald Boa 65 | # 66 | # Revision 1.2 2012/05/06 05:49:15 phil 67 | # Copyright Storm for Mamba 68 | # 69 | # Revision 1.1 2012/01/23 20:43:56 phil 70 | # Latest Anaconda for 6 71 | # 72 | # Revision 1.7 2011/07/23 02:31:15 phil 73 | # Viper Copyright 74 | # 75 | # Revision 1.6 2010/09/07 23:53:23 bruno 76 | # star power for gb 77 | # 78 | # Revision 1.5 2009/05/01 19:07:21 mjk 79 | # chimi con queso 80 | # 81 | # Revision 1.4 2008/10/18 00:56:13 mjk 82 | # copyright 5.1 83 | # 84 | # Revision 1.3 2008/03/06 23:41:56 mjk 85 | # copyright storm on 86 | # 87 | # Revision 1.2 2007/06/23 04:03:49 mjk 88 | # mars hill copyright 89 | # 90 | # Revision 1.1 2007/01/11 23:18:44 bruno 91 | # first clean compile 92 | # 93 | # there is no way in hell this works 94 | # 95 | # 96 | 97 | BOOTBASE = ../../../.. 98 | LOADER = ../../loader 99 | SPLASH = ../splash 100 | 101 | include ../../version.mk 102 | include ../Boot.mk 103 | 104 | default: build 105 | 106 | build: $(DEFAULT) 107 | 108 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/6/images/i386/isolinux.cfg: -------------------------------------------------------------------------------- 1 | default internal 2 | prompt 1 3 | timeout 100 4 | display boot.msg 5 | 6 | label internal 7 | kernel vmlinuz 8 | append ramdisk_size=160000 initrd=initrd.img devfs=nomount ks ksdevice=eth0 kssendmac selinux=0 9 | 10 | label frontend 11 | kernel vmlinuz 12 | append ramdisk_size=160000 initrd=initrd.img devfs=nomount ks=cdrom:/ks.cfg kssendmac selinux=0 frontend build nowatchdog 13 | 14 | label build 15 | kernel vmlinuz 16 | append ramdisk_size=160000 initrd=initrd.img devfs=nomount ks=cdrom:/ks.cfg kssendmac selinux=0 build nowatchdog 17 | 18 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/6/images/splash/EmeraldBoa1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rocksclusters/kernel/31e305619dff8eb32fee5d57ba3ca9eb68add5d3/src/rocks-boot/enterprise/6/images/splash/EmeraldBoa1.png -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/6/images/splash/create_boot.msg.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python 2 | #$Log: create_boot.msg.py,v $ 3 | #Revision 1.1 2012/01/23 20:43:56 phil 4 | #Latest Anaconda for 6 5 | # 6 | #Revision 1.2 2008/03/17 16:55:26 bruno 7 | #splash screen is done. 8 | # 9 | #Revision 1.1 2007/01/11 23:18:44 bruno 10 | #first clean compile 11 | # 12 | #there is no way in hell this works 13 | # 14 | #Revision 1.1 2005/01/03 21:22:47 bruno 15 | #first whack at RHEL 4 (nahant-beta) 16 | # 17 | #Revision 1.1 2004/11/23 02:41:14 bruno 18 | #made the kernel roll bootable. 19 | # 20 | #moved 'rocks-boot' here -- it is now uses vmlinuz and builds the initrd.img 21 | #file from the local (if present in the local RPMS directory) or from the 22 | #current distro. 23 | # 24 | #if you want to use a specific kernel, just drop it in the RPMS directory. 25 | # 26 | #Revision 1.1 2003/11/12 20:02:39 fds 27 | #Updated Dmac splash work. 28 | # 29 | #Revision 1.3 2003/08/28 20:07:26 dmac 30 | #now indents in boot.msg which makes it look better 31 | #cleaned up code 32 | # 33 | #Revision 1.2 2003/08/20 21:40:26 dmac 34 | #fixed log issue 35 | # 36 | import string 37 | import sys 38 | import os 39 | 40 | #Creates the file boot.msg, reading from a file 41 | #called message. It indents the contents, and adds 42 | #magic for syslinux to read the image logo, then saves 43 | #as a file 44 | class create_boot_msg: 45 | def open_file(self, file_path, arguments='rb'): 46 | try: 47 | fileobj=open(file_path, arguments) 48 | except: 49 | print '%s cannot be opened' % (file_path) 50 | sys.exit() 51 | 52 | return fileobj 53 | def close_file(self, fileobj): 54 | try: 55 | file_obj.close() 56 | except: 57 | print 'Error closing file' 58 | 59 | def read_file(self, fileobj): 60 | list=[] 61 | for line in fileobj.readlines(): 62 | list.append(line) 63 | return list 64 | def write_file(self, fileobj, list): 65 | for line in list: 66 | fileobj.write(line) 67 | def write_magic(self, fileobj, name_image): 68 | # clear the screen and home the cursor 69 | fileobj.write('\014\n') 70 | 71 | # a reference to the splash screen 72 | fileobj.write('\030') 73 | fileobj.write(name_image) 74 | fileobj.write('\n') 75 | 76 | def indent_list(self, list): 77 | newlist=[] 78 | #keeps track if previous line indented 79 | #1 is yes, 0 is no 80 | indented=0 81 | for line in list: 82 | #if line is supposed to be indented, 83 | #make it tabbed, else add a newline 84 | if line[0]=='\t' or line[0]==' ': 85 | line=line[1:] 86 | line=string.join(['\t',line],'') 87 | indented=1 88 | elif indented==1: 89 | line=string.join(['\n',line],'') 90 | indented=0 91 | else: 92 | pass 93 | newlist.append(line) 94 | 95 | return newlist 96 | 97 | def run(self, path_file_in, path_file_out): 98 | infile=self.open_file(path_file_in, 'rb') 99 | outfile=self.open_file(path_file_out, 'wb') 100 | 101 | messagelist=self.read_file(infile) 102 | new_messagelist=self.indent_list(messagelist) 103 | 104 | self.write_file(outfile,new_messagelist) 105 | #File name of image is assumed to be splash.lss 106 | self.write_magic(outfile, 'splash.lss') 107 | 108 | infile.close() 109 | outfile.close() 110 | 111 | if __name__=='__main__': 112 | import sys 113 | 114 | arguments='%s\nfile that contains message\n\ 115 | file that will hold message w/ special magic\n' % (sys.argv[0]) 116 | 117 | #Check to make sure there are the correct number of args 118 | if len(sys.argv)!= 3: 119 | print arguments 120 | sys.exit() 121 | 122 | boot_msg=create_boot_msg() 123 | boot_msg.run(sys.argv[1], sys.argv[2]) 124 | 125 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/6/images/splash/label.en_US.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rocksclusters/kernel/31e305619dff8eb32fee5d57ba3ca9eb68add5d3/src/rocks-boot/enterprise/6/images/splash/label.en_US.png -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/6/images/splash/mamba-splash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rocksclusters/kernel/31e305619dff8eb32fee5d57ba3ca9eb68add5d3/src/rocks-boot/enterprise/6/images/splash/mamba-splash.png -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/6/images/splash/message: -------------------------------------------------------------------------------- 1 | Rocks Cluster Distribution 2 | 3 | 4 | What do you want to kickstart? 5 | 6 | - Frontend: 7 | type "frontend" 8 | 9 | - Upgrade your frontend: 10 | type "frontend upgrade" 11 | 12 | - Frontend Network Install 13 | type "frontend central=name" 14 | where name is "Rocks", or the 15 | FQDN of your central server. 16 | 17 | - Rescue 18 | type "frontend rescue" 19 | 20 | - Cluster node: 21 | do nothing or press return 22 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/6/images/splash/pngtolss: -------------------------------------------------------------------------------- 1 | #/bin/bash 2 | #$Log: pngtolss,v $ 3 | #Revision 1.1 2012/01/23 20:43:56 phil 4 | #Latest Anaconda for 6 5 | # 6 | #Revision 1.1 2007/01/11 23:18:44 bruno 7 | #first clean compile 8 | # 9 | #there is no way in hell this works 10 | # 11 | #Revision 1.2 2006/09/13 00:05:15 mjk 12 | #fixup splash screen 13 | # 14 | #Revision 1.1 2005/01/03 21:22:47 bruno 15 | #first whack at RHEL 4 (nahant-beta) 16 | # 17 | #Revision 1.1 2004/11/23 02:41:14 bruno 18 | #made the kernel roll bootable. 19 | # 20 | #moved 'rocks-boot' here -- it is now uses vmlinuz and builds the initrd.img 21 | #file from the local (if present in the local RPMS directory) or from the 22 | #current distro. 23 | # 24 | #if you want to use a specific kernel, just drop it in the RPMS directory. 25 | # 26 | #Revision 1.1 2003/11/12 20:02:39 fds 27 | #Updated Dmac splash work. 28 | # 29 | #Revision 1.2 2003/08/25 19:35:46 dmac 30 | #doesn't delete temp. picture. this temp. picture is a 31 | #preview of the .lss picture 32 | # 33 | #Revision 1.1 2003/08/20 21:33:57 dmac 34 | #initial relase: converts a .png picture to .lss picture-dmac 35 | # 36 | #-helps create ROCKS boot-up logo-dmac 37 | #Converts a *.png file to a *.lss file which is used for isolinux 38 | #Currently, the background is set to white, and the text is set to black 39 | 40 | if ! [ $# -eq 2 ]; then 41 | echo "Usage: " 42 | echo ": *.png file to be converted to lss format" 43 | echo ": name of *.lss file that will be generated" 44 | exit 1 45 | fi 46 | 47 | 48 | #the temp file to hold the ppm format 49 | PPMFILE="tmp001.ppm" 50 | PNGORIG=$1 51 | LSSFILE=$2 52 | 53 | if [ " `echo $PNGORIG | grep '.png$'`" = "" ]; then 54 | echo "$PNGORIG is not a .png file" 55 | exit 1 56 | fi 57 | 58 | #Make sure the file exists 59 | if ! [ -e $PNGORIG ]; then 60 | echo "$PNGORIG does not exist" 61 | exit 1 62 | fi 63 | 64 | PNGFILE="$PNGORIG.tmp" 65 | cp $PNGORIG $PNGFILE 66 | 67 | #Convert the .png file to a .ppm file 68 | pngtopnm $PNGFILE > $PPMFILE 69 | 70 | #required because of a bug in RedHat 71 | export LANG=C 72 | 73 | 74 | #Convert the ppm file to the .lss file 75 | #'#ffffff=0' specifies that the background is white 76 | #'#000000=7' specifies that the text is black 77 | ppmtolss16 '#ffffff=0' '#000000=7' < $PPMFILE > $LSSFILE 78 | 79 | rm -f $PPMFILE $PNGFILE 80 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/6/images/x86_64/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # $Id: Makefile,v 1.3 2012/11/27 00:49:06 phil Exp $ 3 | # 4 | # WARNING: You must be root to run this makefile. We do a lot of 5 | # mounts (over loopback) and mknods (for initrd /dev entries) so you 6 | # really need root access. 7 | # 8 | # @Copyright@ 9 | # 10 | # Rocks(r) 11 | # www.rocksclusters.org 12 | # version 6.2 (SideWinder) 13 | # version 7.0 (Manzanita) 14 | # 15 | # Copyright (c) 2000 - 2017 The Regents of the University of California. 16 | # All rights reserved. 17 | # 18 | # Redistribution and use in source and binary forms, with or without 19 | # modification, are permitted provided that the following conditions are 20 | # met: 21 | # 22 | # 1. Redistributions of source code must retain the above copyright 23 | # notice, this list of conditions and the following disclaimer. 24 | # 25 | # 2. Redistributions in binary form must reproduce the above copyright 26 | # notice unmodified and in its entirety, this list of conditions and the 27 | # following disclaimer in the documentation and/or other materials provided 28 | # with the distribution. 29 | # 30 | # 3. All advertising and press materials, printed or electronic, mentioning 31 | # features or use of this software must display the following acknowledgement: 32 | # 33 | # "This product includes software developed by the Rocks(r) 34 | # Cluster Group at the San Diego Supercomputer Center at the 35 | # University of California, San Diego and its contributors." 36 | # 37 | # 4. Except as permitted for the purposes of acknowledgment in paragraph 3, 38 | # neither the name or logo of this software nor the names of its 39 | # authors may be used to endorse or promote products derived from this 40 | # software without specific prior written permission. The name of the 41 | # software includes the following terms, and any derivatives thereof: 42 | # "Rocks", "Rocks Clusters", and "Avalanche Installer". For licensing of 43 | # the associated name, interested parties should contact Technology 44 | # Transfer & Intellectual Property Services, University of California, 45 | # San Diego, 9500 Gilman Drive, Mail Code 0910, La Jolla, CA 92093-0910, 46 | # Ph: (858) 534-5815, FAX: (858) 534-7345, E-MAIL:invent@ucsd.edu 47 | # 48 | # THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' 49 | # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, 50 | # THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 51 | # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS 52 | # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 53 | # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 54 | # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR 55 | # BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 56 | # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 57 | # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN 58 | # IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 59 | # 60 | # @Copyright@ 61 | # 62 | # $Log: Makefile,v $ 63 | # Revision 1.3 2012/11/27 00:49:06 phil 64 | # Copyright Storm for Emerald Boa 65 | # 66 | # Revision 1.2 2012/05/06 05:49:15 phil 67 | # Copyright Storm for Mamba 68 | # 69 | # Revision 1.1 2012/01/23 20:43:56 phil 70 | # Latest Anaconda for 6 71 | # 72 | # Revision 1.6 2011/07/23 02:31:15 phil 73 | # Viper Copyright 74 | # 75 | # Revision 1.5 2010/09/07 23:53:23 bruno 76 | # star power for gb 77 | # 78 | # Revision 1.4 2009/05/01 19:07:21 mjk 79 | # chimi con queso 80 | # 81 | # Revision 1.3 2008/10/18 00:56:13 mjk 82 | # copyright 5.1 83 | # 84 | # Revision 1.2 2008/03/06 23:41:56 mjk 85 | # copyright storm on 86 | # 87 | # Revision 1.1 2007/08/14 22:38:24 bruno 88 | # rocks-boot compiles on RHEL 5 89 | # 90 | # 91 | 92 | BOOTBASE = ../../../.. 93 | LOADER = ../../loader 94 | SPLASH = ../splash 95 | 96 | include ../../version.mk 97 | include ../Boot.mk 98 | 99 | default: build 100 | 101 | build: $(DEFAULT) 102 | 103 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/6/images/x86_64/isolinux.cfg: -------------------------------------------------------------------------------- 1 | default internal 2 | prompt 1 3 | timeout 100 4 | display boot.msg 5 | 6 | label internal 7 | kernel vmlinuz 8 | append ramdisk_size=160000 initrd=initrd.img devfs=nomount ks ksdevice=eth0 kssendmac selinux=0 9 | 10 | label frontend 11 | kernel vmlinuz 12 | append ramdisk_size=160000 initrd=initrd.img devfs=nomount ks=cdrom:/ks.cfg kssendmac selinux=0 frontend build nowatchdog 13 | 14 | label build 15 | kernel vmlinuz 16 | append ramdisk_size=160000 initrd=initrd.img devfs=nomount ks=cdrom:/ks.cfg kssendmac selinux=0 build nowatchdog 17 | 18 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/6/loader/patch-files/anaconda-13.21.149/loader/net.h: -------------------------------------------------------------------------------- 1 | /* 2 | * net.h 3 | * 4 | * Copyright (C) 2007 Red Hat, Inc. All rights reserved. 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program. If not, see . 18 | */ 19 | 20 | #ifndef H_LOADER_NET 21 | #define H_LOADER_NET 22 | 23 | #include 24 | #include "../isys/iface.h" 25 | #include "loader.h" 26 | 27 | #define DHCP_METHOD_STR _("Dynamic IP configuration (DHCP)") 28 | #define MANUAL_METHOD_STR _("Manual configuration") 29 | #ifdef ENABLE_IPV6 30 | #define DHCPV6_METHOD_STR _("Dynamic IP configuration (DHCPv6)") 31 | #define AUTO_METHOD_STR _("Automatic neighbor discovery") 32 | #endif 33 | 34 | #define SYSCONFIG_PATH "/etc/sysconfig" 35 | #define NETWORK_SCRIPTS_PATH "/etc/sysconfig/network-scripts" 36 | 37 | struct intfconfig_s { 38 | newtComponent ipv4Entry, cidr4Entry; 39 | newtComponent gwEntry, nsEntry; 40 | const char *ipv4, *cidr4; 41 | #ifdef ENABLE_IPV6 42 | newtComponent ipv6Entry, cidr6Entry; 43 | const char *ipv6, *cidr6; 44 | const char *gw6; 45 | #endif 46 | const char *gw, *ns; 47 | }; 48 | 49 | struct netconfopts { 50 | char ipv4Choice; 51 | int v4Method; 52 | #ifdef ENABLE_IPV6 53 | char ipv6Choice; 54 | int v6Method; 55 | #endif 56 | }; 57 | 58 | typedef int int32; 59 | 60 | 61 | #ifdef ROCKS 62 | int readNetConfig(char * device, iface_t * iface, 63 | char * dhcpclass, int methodNum, short int); 64 | #else 65 | int readNetConfig(char * device, iface_t * iface, 66 | char * dhcpclass, int methodNum); 67 | #endif 68 | int configureTCPIP(char * device, iface_t * iface, struct netconfopts * opts, 69 | int methodNum); 70 | int manualNetConfig(char * device, iface_t * iface, 71 | struct intfconfig_s * ipcomps, struct netconfopts * opts); 72 | void debugNetworkInfo(iface_t * iface); 73 | int writeDisabledNetInfo(void); 74 | int writeDisabledIfcfgFile(char *device); 75 | int removeDhclientConfFile(char *device); 76 | int removeIfcfgFile(char *device); 77 | int writeEnabledNetInfo(iface_t * iface); 78 | int chooseNetworkInterface(struct loaderData_s * loaderData); 79 | void setupIfaceStruct(iface_t * iface, struct loaderData_s * loaderData); 80 | int setupWireless(iface_t * iface); 81 | void setKickstartNetwork(struct loaderData_s * loaderData, int argc, 82 | char ** argv); 83 | int kickstartNetworkUp(struct loaderData_s * loaderData, 84 | iface_t * iface); 85 | int activateDevice(struct loaderData_s * loaderData, 86 | iface_t * iface); 87 | int disconnectDevice(char *device); 88 | void splitHostname (char *str, char **host, char **port); 89 | int wait_for_iface_activation(char * ifname); 90 | int wait_for_iface_disconnection(char *ifname); 91 | int isURLRemote(char *url); 92 | int split_ipv6addr_prefix_length(char *str, char **address, char **prefix); 93 | 94 | #endif 95 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/6/loader/patch-files/anaconda-13.21.176/loader/net.h: -------------------------------------------------------------------------------- 1 | /* 2 | * net.h 3 | * 4 | * Copyright (C) 2007 Red Hat, Inc. All rights reserved. 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program. If not, see . 18 | */ 19 | 20 | #ifndef H_LOADER_NET 21 | #define H_LOADER_NET 22 | 23 | #include 24 | #include "../isys/iface.h" 25 | #include "loader.h" 26 | 27 | #define DHCP_METHOD_STR _("Dynamic IP configuration (DHCP)") 28 | #define MANUAL_METHOD_STR _("Manual configuration") 29 | #ifdef ENABLE_IPV6 30 | #define DHCPV6_METHOD_STR _("Dynamic IP configuration (DHCPv6)") 31 | #define AUTO_METHOD_STR _("Automatic neighbor discovery") 32 | #endif 33 | 34 | #define SYSCONFIG_PATH "/etc/sysconfig" 35 | #define NETWORK_SCRIPTS_PATH "/etc/sysconfig/network-scripts" 36 | 37 | #define NM_DHCP_TIMEOUT 45 38 | 39 | struct intfconfig_s { 40 | newtComponent ipv4Entry, cidr4Entry; 41 | newtComponent gwEntry, nsEntry; 42 | const char *ipv4, *cidr4; 43 | #ifdef ENABLE_IPV6 44 | newtComponent ipv6Entry, cidr6Entry; 45 | const char *ipv6, *cidr6; 46 | const char *gw6; 47 | #endif 48 | const char *gw, *ns; 49 | }; 50 | 51 | struct netconfopts { 52 | char ipv4Choice; 53 | int v4Method; 54 | #ifdef ENABLE_IPV6 55 | char ipv6Choice; 56 | int v6Method; 57 | #endif 58 | }; 59 | 60 | typedef int int32; 61 | 62 | 63 | #ifdef ROCKS 64 | int readNetConfig(char * device, iface_t * iface, 65 | char * dhcpclass, int methodNum, short int); 66 | #else 67 | int readNetConfig(char * device, iface_t * iface, 68 | char * dhcpclass, int methodNum); 69 | #endif 70 | int configureTCPIP(char * device, iface_t * iface, struct netconfopts * opts, 71 | int methodNum); 72 | int manualNetConfig(char * device, iface_t * iface, 73 | struct intfconfig_s * ipcomps, struct netconfopts * opts); 74 | void debugNetworkInfo(iface_t * iface); 75 | int writeDisabledNetInfo(void); 76 | int writeDisabledIfcfgFile(char *device); 77 | int removeDhclientConfFile(char *device); 78 | int removeIfcfgFile(char *device); 79 | int writeEnabledNetInfo(iface_t * iface); 80 | int chooseNetworkInterface(struct loaderData_s * loaderData); 81 | void setupIfaceStruct(iface_t * iface, struct loaderData_s * loaderData); 82 | int setupWireless(iface_t * iface); 83 | void setKickstartNetwork(struct loaderData_s * loaderData, int argc, 84 | char ** argv); 85 | int kickstartNetworkUp(struct loaderData_s * loaderData, 86 | iface_t * iface); 87 | int activateDevice(struct loaderData_s * loaderData, 88 | iface_t * iface); 89 | int disconnectDevice(char *device); 90 | void splitHostname (char *str, char **host, char **port); 91 | int wait_for_iface_activation(char * ifname, int timeout); 92 | int wait_for_iface_disconnection(char *ifname); 93 | int isURLRemote(char *url); 94 | int split_ipv6addr_prefix_length(char *str, char **address, char **prefix); 95 | 96 | #endif 97 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/6/loader/patch-files/anaconda-13.21.215/loader/net.h: -------------------------------------------------------------------------------- 1 | /* 2 | * net.h 3 | * 4 | * Copyright (C) 2007 Red Hat, Inc. All rights reserved. 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program. If not, see . 18 | */ 19 | 20 | #ifndef H_LOADER_NET 21 | #define H_LOADER_NET 22 | 23 | #include 24 | #include "../isys/iface.h" 25 | #include "loader.h" 26 | 27 | #define DHCP_METHOD_STR _("Dynamic IP configuration (DHCP)") 28 | #define MANUAL_METHOD_STR _("Manual configuration") 29 | #ifdef ENABLE_IPV6 30 | #define DHCPV6_METHOD_STR _("Automatic, DHCP only") 31 | #define AUTO_METHOD_STR _("Automatic") 32 | #endif 33 | 34 | #define SYSCONFIG_PATH "/etc/sysconfig" 35 | #define NETWORK_SCRIPTS_PATH "/etc/sysconfig/network-scripts" 36 | 37 | #define NM_DHCP_TIMEOUT 45 38 | 39 | struct intfconfig_s { 40 | newtComponent ipv4Entry, cidr4Entry; 41 | newtComponent gwEntry, nsEntry; 42 | const char *ipv4, *cidr4; 43 | #ifdef ENABLE_IPV6 44 | newtComponent ipv6Entry, cidr6Entry; 45 | const char *ipv6, *cidr6; 46 | const char *gw6; 47 | #endif 48 | const char *gw, *ns; 49 | }; 50 | 51 | struct netconfopts { 52 | char ipv4Choice; 53 | int v4Method; 54 | #ifdef ENABLE_IPV6 55 | char ipv6Choice; 56 | int v6Method; 57 | #endif 58 | }; 59 | 60 | typedef int int32; 61 | 62 | 63 | #ifdef ROCKS 64 | int readNetConfig(char * device, iface_t * iface, 65 | char * dhcpclass, int methodNum, short int); 66 | #else 67 | int readNetConfig(char * device, iface_t * iface, 68 | char * dhcpclass, int methodNum); 69 | #endif 70 | int configureTCPIP(char * device, iface_t * iface, struct netconfopts * opts, 71 | int methodNum); 72 | int manualNetConfig(char * device, iface_t * iface, 73 | struct intfconfig_s * ipcomps, struct netconfopts * opts); 74 | void debugNetworkInfo(iface_t * iface); 75 | int writeDisabledNetInfo(void); 76 | int writeDisabledIfcfgFile(char *device); 77 | int removeDhclientConfFile(char *device); 78 | int removeIfcfgFile(char *device); 79 | int writeEnabledNetInfo(iface_t * iface); 80 | int chooseNetworkInterface(struct loaderData_s * loaderData); 81 | void setupIfaceStruct(iface_t * iface, struct loaderData_s * loaderData); 82 | int setupWireless(iface_t * iface); 83 | void setKickstartNetwork(struct loaderData_s * loaderData, int argc, 84 | char ** argv); 85 | int kickstartNetworkUp(struct loaderData_s * loaderData, 86 | iface_t * iface); 87 | int activateDevice(struct loaderData_s * loaderData, 88 | iface_t * iface); 89 | int disconnectDevice(char *device); 90 | void splitHostname (char *str, char **host, char **port); 91 | int wait_for_iface_activation(char * ifname, int timeout); 92 | int wait_for_iface_disconnection(char *ifname); 93 | int isURLRemote(char *url); 94 | int split_ipv6addr_prefix_length(char *str, char **address, char **prefix); 95 | int enable_NM_BOND_VLAN(void); 96 | int split_bond_option(char *str, char **bondname, char **bondslaves, char **options); 97 | int networkDeviceExists(char *name); 98 | int writeBondSlaveIfcfgFile(char *slave, char *master); 99 | void parseDnsServers(const char *dnss, iface_t *iface); 100 | #endif 101 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/6/loader/patch-files/anaconda-13.21.229/loader/net.h: -------------------------------------------------------------------------------- 1 | /* 2 | * net.h 3 | * 4 | * Copyright (C) 2007 Red Hat, Inc. All rights reserved. 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program. If not, see . 18 | */ 19 | 20 | #ifndef H_LOADER_NET 21 | #define H_LOADER_NET 22 | 23 | #include 24 | #include "../isys/iface.h" 25 | #include "loader.h" 26 | 27 | #define DHCP_METHOD_STR _("Dynamic IP configuration (DHCP)") 28 | #define MANUAL_METHOD_STR _("Manual configuration") 29 | #ifdef ENABLE_IPV6 30 | #define DHCPV6_METHOD_STR _("Automatic, DHCP only") 31 | #define AUTO_METHOD_STR _("Automatic") 32 | #endif 33 | 34 | #define SYSCONFIG_PATH "/etc/sysconfig" 35 | #define NETWORK_SCRIPTS_PATH "/etc/sysconfig/network-scripts" 36 | 37 | #define NM_DHCP_TIMEOUT 45 38 | 39 | struct intfconfig_s { 40 | newtComponent ipv4Entry, cidr4Entry; 41 | newtComponent gwEntry, nsEntry; 42 | const char *ipv4, *cidr4; 43 | #ifdef ENABLE_IPV6 44 | newtComponent ipv6Entry, cidr6Entry; 45 | const char *ipv6, *cidr6; 46 | const char *gw6; 47 | #endif 48 | const char *gw, *ns; 49 | }; 50 | 51 | struct netconfopts { 52 | char ipv4Choice; 53 | int v4Method; 54 | #ifdef ENABLE_IPV6 55 | char ipv6Choice; 56 | int v6Method; 57 | #endif 58 | }; 59 | 60 | typedef int int32; 61 | 62 | 63 | #ifdef ROCKS 64 | int readNetConfig(char * device, iface_t * iface, 65 | char * dhcpclass, int methodNum, short int); 66 | #else 67 | int readNetConfig(char * device, iface_t * iface, 68 | char * dhcpclass, int methodNum); 69 | #endif 70 | int configureTCPIP(char * device, iface_t * iface, struct netconfopts * opts, 71 | int methodNum); 72 | int manualNetConfig(char * device, iface_t * iface, 73 | struct intfconfig_s * ipcomps, struct netconfopts * opts); 74 | void debugNetworkInfo(iface_t * iface); 75 | int writeDisabledNetInfo(void); 76 | int writeDisabledIfcfgFile(char *device); 77 | int removeDhclientConfFile(char *device); 78 | int removeIfcfgFile(char *device); 79 | int writeEnabledNetInfo(iface_t * iface); 80 | int chooseNetworkInterface(struct loaderData_s * loaderData); 81 | void setupIfaceStruct(iface_t * iface, struct loaderData_s * loaderData); 82 | int setupWireless(iface_t * iface); 83 | void setKickstartNetwork(struct loaderData_s * loaderData, int argc, 84 | char ** argv); 85 | int kickstartNetworkUp(struct loaderData_s * loaderData, 86 | iface_t * iface); 87 | int activateDevice(struct loaderData_s * loaderData, 88 | iface_t * iface); 89 | int disconnectDevice(char *device); 90 | void splitHostname (char *str, char **host, char **port); 91 | int wait_for_iface_activation(char * ifname, int timeout); 92 | int wait_for_iface_disconnection(char *ifname); 93 | int isURLRemote(char *url); 94 | int split_ipv6addr_prefix_length(char *str, char **address, char **prefix); 95 | int enable_NM_BOND_VLAN(void); 96 | int split_bond_option(char *str, char **bondname, char **bondslaves, char **options); 97 | int networkDeviceExists(char *name); 98 | int writeBondSlaveIfcfgFile(char *slave, char *master); 99 | void parseDnsServers(const char *dnss, iface_t *iface); 100 | #endif 101 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/6/loader/patch-files/anaconda-13.21.239/loader/net.h: -------------------------------------------------------------------------------- 1 | /* 2 | * net.h 3 | * 4 | * Copyright (C) 2007 Red Hat, Inc. All rights reserved. 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program. If not, see . 18 | */ 19 | 20 | #ifndef H_LOADER_NET 21 | #define H_LOADER_NET 22 | 23 | #include 24 | #include "../isys/iface.h" 25 | #include "loader.h" 26 | 27 | #define DHCP_METHOD_STR _("Dynamic IP configuration (DHCP)") 28 | #define MANUAL_METHOD_STR _("Manual configuration") 29 | #ifdef ENABLE_IPV6 30 | #define DHCPV6_METHOD_STR _("Automatic, DHCP only") 31 | #define AUTO_METHOD_STR _("Automatic") 32 | #endif 33 | 34 | #define SYSCONFIG_PATH "/etc/sysconfig" 35 | #define NETWORK_SCRIPTS_PATH "/etc/sysconfig/network-scripts" 36 | 37 | #define NM_DHCP_TIMEOUT 45 38 | 39 | struct intfconfig_s { 40 | newtComponent ipv4Entry, cidr4Entry; 41 | newtComponent gwEntry, nsEntry; 42 | const char *ipv4, *cidr4; 43 | #ifdef ENABLE_IPV6 44 | newtComponent ipv6Entry, cidr6Entry; 45 | const char *ipv6, *cidr6; 46 | const char *gw6; 47 | #endif 48 | const char *gw, *ns; 49 | }; 50 | 51 | struct netconfopts { 52 | char ipv4Choice; 53 | int v4Method; 54 | #ifdef ENABLE_IPV6 55 | char ipv6Choice; 56 | int v6Method; 57 | #endif 58 | }; 59 | 60 | typedef int int32; 61 | 62 | 63 | #ifdef ROCKS 64 | int readNetConfig(char * device, iface_t * iface, 65 | char * dhcpclass, int methodNum, short int); 66 | #else 67 | int readNetConfig(char * device, iface_t * iface, 68 | char * dhcpclass, int methodNum); 69 | #endif 70 | int configureTCPIP(char * device, iface_t * iface, struct netconfopts * opts, 71 | int methodNum); 72 | int manualNetConfig(char * device, iface_t * iface, 73 | struct intfconfig_s * ipcomps, struct netconfopts * opts); 74 | void debugNetworkInfo(iface_t * iface); 75 | int writeDisabledNetInfo(void); 76 | int writeDisabledIfcfgFile(char *device); 77 | int removeDhclientConfFile(char *device); 78 | int removeIfcfgFile(char *device); 79 | int writeEnabledNetInfo(iface_t * iface); 80 | int chooseNetworkInterface(struct loaderData_s * loaderData); 81 | void setupIfaceStruct(iface_t * iface, struct loaderData_s * loaderData); 82 | int setupWireless(iface_t * iface); 83 | void setKickstartNetwork(struct loaderData_s * loaderData, int argc, 84 | char ** argv); 85 | int kickstartNetworkUp(struct loaderData_s * loaderData, 86 | iface_t * iface); 87 | int activateDevice(struct loaderData_s * loaderData, 88 | iface_t * iface); 89 | int disconnectDevice(char *device); 90 | void splitHostname (char *str, char **host, char **port); 91 | int wait_for_iface_activation(char * ifname, int timeout); 92 | int wait_for_iface_disconnection(char *ifname); 93 | int isURLRemote(char *url); 94 | int split_ipv6addr_prefix_length(char *str, char **address, char **prefix); 95 | int enable_NM_BOND_VLAN(void); 96 | int split_bond_option(char *str, char **bondname, char **bondslaves, char **options); 97 | int networkDeviceExists(char *name); 98 | int writeBondSlaveIfcfgFile(char *slave, char *master); 99 | void parseDnsServers(const char *dnss, iface_t *iface); 100 | #endif 101 | -------------------------------------------------------------------------------- /src/rocks-boot/enterprise/6/version.mk: -------------------------------------------------------------------------------- 1 | ANACONDA_VERSION = 13.21.239 2 | -------------------------------------------------------------------------------- /src/sqlite/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # $Id: Makefile,v 1.3 2012/11/27 00:49:07 phil Exp $ 3 | # 4 | # @Copyright@ 5 | # 6 | # Rocks(r) 7 | # www.rocksclusters.org 8 | # version 6.2 (SideWinder) 9 | # version 7.0 (Manzanita) 10 | # 11 | # Copyright (c) 2000 - 2017 The Regents of the University of California. 12 | # All rights reserved. 13 | # 14 | # Redistribution and use in source and binary forms, with or without 15 | # modification, are permitted provided that the following conditions are 16 | # met: 17 | # 18 | # 1. Redistributions of source code must retain the above copyright 19 | # notice, this list of conditions and the following disclaimer. 20 | # 21 | # 2. Redistributions in binary form must reproduce the above copyright 22 | # notice unmodified and in its entirety, this list of conditions and the 23 | # following disclaimer in the documentation and/or other materials provided 24 | # with the distribution. 25 | # 26 | # 3. All advertising and press materials, printed or electronic, mentioning 27 | # features or use of this software must display the following acknowledgement: 28 | # 29 | # "This product includes software developed by the Rocks(r) 30 | # Cluster Group at the San Diego Supercomputer Center at the 31 | # University of California, San Diego and its contributors." 32 | # 33 | # 4. Except as permitted for the purposes of acknowledgment in paragraph 3, 34 | # neither the name or logo of this software nor the names of its 35 | # authors may be used to endorse or promote products derived from this 36 | # software without specific prior written permission. The name of the 37 | # software includes the following terms, and any derivatives thereof: 38 | # "Rocks", "Rocks Clusters", and "Avalanche Installer". For licensing of 39 | # the associated name, interested parties should contact Technology 40 | # Transfer & Intellectual Property Services, University of California, 41 | # San Diego, 9500 Gilman Drive, Mail Code 0910, La Jolla, CA 92093-0910, 42 | # Ph: (858) 534-5815, FAX: (858) 534-7345, E-MAIL:invent@ucsd.edu 43 | # 44 | # THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' 45 | # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, 46 | # THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 47 | # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS 48 | # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 49 | # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 50 | # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR 51 | # BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 52 | # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 53 | # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN 54 | # IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 55 | # 56 | # @Copyright@ 57 | # 58 | # $Log: Makefile,v $ 59 | # Revision 1.3 2012/11/27 00:49:07 phil 60 | # Copyright Storm for Emerald Boa 61 | # 62 | # Revision 1.2 2012/05/06 05:49:15 phil 63 | # Copyright Storm for Mamba 64 | # 65 | # Revision 1.1 2012/02/28 05:02:46 phil 66 | # SQLite 3.7.10 67 | # 68 | # 69 | # 70 | 71 | REDHAT.ROOT = $(CURDIR)/../../ 72 | -include $(ROCKSROOT)/etc/Rules.mk 73 | include Rules.mk 74 | 75 | 76 | build: 77 | tar zvfx $(TARFILE) 78 | ( \ 79 | cd $(SUBDIR) ; \ 80 | ./configure --prefix=$(PKGROOT) ; \ 81 | $(MAKE) ; \ 82 | ) 83 | 84 | install:: 85 | mkdir -p $(ROOT)/$(PKGROOT) 86 | ( \ 87 | cd $(SUBDIR); \ 88 | $(MAKE) prefix=$(ROOT)/$(PKGROOT) install; \ 89 | ) 90 | 91 | 92 | clean:: 93 | rm -rf $(SUBDIR) 94 | rm -f $(NAME).spec.in 95 | 96 | -------------------------------------------------------------------------------- /src/sqlite/filter-provides.sh: -------------------------------------------------------------------------------- 1 | #! /bin/bash 2 | # 3 | # provides can confuse apps that are looking for libsqlite provided 4 | # by system sqlite rpm 5 | /usr/lib/rpm/find-provides $* | sed -e 's/libsqlite/foundation-libsqlite/g' | sed -e '/^[[:space:]]*$/d' | sed -e '/^#/d' 6 | 7 | -------------------------------------------------------------------------------- /src/sqlite/version.mk: -------------------------------------------------------------------------------- 1 | NAME = foundation-sqlite 2 | PKGROOT = /opt/sqlite 3 | VERSION = 3.7.10 4 | TARVERSION = 3071000 5 | RELEASE = 0 6 | SUBDIR = sqlite-autoconf-$(TARVERSION) 7 | TARFILE = $(SUBDIR).tar.gz 8 | RPM.FILES = /opt/sqlite 9 | RPM.EXTRAS="%define _use_internal_dependency_generator 0\\n%define __find_provides %{_builddir}/%{name}-%{version}/filter-provides.sh\\n%define __find_requires %{_rpmconfigdir}/find-requires\\n%define __os_install_post %{nil}" 10 | 11 | -------------------------------------------------------------------------------- /src/tracker/checkmd5.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | #include 6 | #include 7 | #include 8 | 9 | extern void logmsg(const char *, ...); 10 | 11 | extern MD5_CTX context; 12 | 13 | 14 | static int 15 | verify_md5(char *md5) 16 | { 17 | int i; 18 | unsigned char digest[16]; 19 | char digest_str[64]; 20 | 21 | /* 22 | * get the digest for the file we just read, then make it a string 23 | */ 24 | if (MD5_Final(digest, &context) != 1) { 25 | logmsg("verify_md5:MD5_Final failed\n"); 26 | return(0); 27 | } 28 | 29 | bzero(digest_str, sizeof(digest_str)); 30 | 31 | for (i = 0; i < sizeof(digest) ; ++i) { 32 | sprintf(digest_str, "%s%02x", digest_str, 33 | (unsigned char)digest[i]); 34 | } 35 | 36 | if (strcmp(digest_str, md5) == 0) { 37 | return(1); 38 | } 39 | 40 | return(-1); 41 | } 42 | 43 | /* 44 | * check the MD5 for a file. 45 | * 46 | * return values: 47 | * 48 | * 0 = no packages.md5 file or no entry in packages.md5 for the filename 49 | * 1 = checksum passed 50 | * -1 = checksum failed 51 | */ 52 | int 53 | check_md5(char *filename) 54 | { 55 | FILE *file; 56 | int retval; 57 | int passed; 58 | char digest[64]; 59 | char fname[1024]; 60 | char done; 61 | 62 | passed = 0; 63 | 64 | if ((file = fopen("/tmp/product/packages.md5", "r")) == NULL) { 65 | logmsg("check_md5:fopen:failed\n"); 66 | return(passed); 67 | } 68 | 69 | done = 0; 70 | while (!done) { 71 | retval = fscanf(file, "%s %s", digest, fname); 72 | 73 | if (retval == 2) { 74 | if (strlen(filename) >= strlen(fname)) { 75 | /* 76 | * check if the last part of the filename 77 | * matches fname found in the packages.md5 file 78 | */ 79 | char *ptr = (char *)&filename[ 80 | strlen(filename) - strlen(fname)]; 81 | 82 | if (strcmp(fname, ptr) == 0) { 83 | if (verify_md5(digest) == 1) { 84 | logmsg("MD5 checksum passed for file %s\n", filename); 85 | passed = 1; 86 | } else { 87 | logmsg("MD5 checksum failed for file %s\n", filename); 88 | passed = -1; 89 | } 90 | 91 | done = 1; 92 | continue; 93 | } 94 | } 95 | } else if (retval == EOF) { 96 | done = 1; 97 | continue; 98 | } 99 | } 100 | 101 | fclose(file); 102 | return(passed); 103 | } 104 | 105 | 106 | -------------------------------------------------------------------------------- /src/tracker/dump-tables.c: -------------------------------------------------------------------------------- 1 | /* 2 | * $Id: dump-tables.c,v 1.2 2012/02/29 23:04:10 phil Exp $ 3 | * 4 | * @COPYRIGHT@ 5 | * @COPYRIGHT@ 6 | * 7 | * $Log: dump-tables.c,v $ 8 | * Revision 1.2 2012/02/29 23:04:10 phil 9 | * Make server2 to the default tracker-server. Now has simple prediction 10 | * 11 | * Revision 1.1 2012/02/28 05:09:42 phil 12 | * New tracker based on sqlite. Still testing 13 | * 14 | * Revision 1.4 2010/12/17 21:51:06 bruno 15 | * put a string in each executable that tells us when it was built. 16 | * 17 | * Revision 1.3 2010/03/15 23:05:56 bruno 18 | * tweaks 19 | * 20 | */ 21 | 22 | #include 23 | #include 24 | #include 25 | #include 26 | #include 27 | #include 28 | #include 29 | #include 30 | #include 31 | #include 32 | #include 33 | #include 34 | #include 35 | #include 36 | #include "tracker.h" 37 | #include 38 | #include 39 | 40 | static char builton[] = { "Built on: " __DATE__ " " __TIME__ }; 41 | 42 | extern int init(uint16_t *, char *, in_addr_t *, uint16_t *, char *, uint16_t *, 43 | in_addr_t *); 44 | extern int init_tracker_comm(int); 45 | extern int send_msg(int, in_addr_t *, uint16_t); 46 | 47 | int 48 | main() 49 | { 50 | uint16_t num_trackers; 51 | in_addr_t trackers[MAX_TRACKERS]; 52 | uint16_t maxpeers; 53 | uint16_t num_pkg_servers; 54 | in_addr_t pkg_servers[MAX_PKG_SERVERS]; 55 | int i; 56 | int sockfd; 57 | char trackers_url[256]; 58 | char pkg_servers_url[256]; 59 | 60 | sprintf(trackers_url,"127.0.0.1"); 61 | 62 | sprintf(pkg_servers_url,"127.0.0.1"); 63 | 64 | fprintf(stderr, "main:trackers_url (%s)\n", trackers_url); 65 | fprintf(stderr, "main:pkg_servers_url (%s)\n", pkg_servers_url); 66 | 67 | if (init(&num_trackers, trackers_url, trackers, &maxpeers, 68 | pkg_servers_url, &num_pkg_servers, pkg_servers) != 0) { 69 | fprintf(stderr, "main:init failed\n"); 70 | return(-1); 71 | } 72 | 73 | if ((sockfd = init_tracker_comm(0)) < 0) { 74 | fprintf(stderr, "main:init_tracker_comm failed\n"); 75 | return(-1); 76 | } 77 | 78 | for (i = 0 ; i < num_trackers; ++i) { 79 | send_msg(sockfd, &trackers[i], DUMP_TABLES); 80 | } 81 | 82 | return(0); 83 | } 84 | 85 | -------------------------------------------------------------------------------- /src/tracker/hashit.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include "tracker.h" 5 | 6 | #include 7 | #include 8 | #include 9 | 10 | static char builton[] = { "Built on: " __DATE__ " " __TIME__ }; 11 | 12 | extern uint64_t hashit(char *); 13 | 14 | int 15 | main(int argc, char **argv) 16 | { 17 | uint64_t hash; 18 | 19 | if (argc != 2) { 20 | fprintf(stderr, "usage: %s \n", argv[0]); 21 | exit(-1); 22 | } 23 | 24 | hash = hashit(argv[1]); 25 | printf("0x%016llx %s\n", hash, argv[1]); 26 | } 27 | -------------------------------------------------------------------------------- /src/tracker/peer-done.c: -------------------------------------------------------------------------------- 1 | /* 2 | * $Id: peer-done.c,v 1.4 2010/12/17 21:51:06 bruno Exp $ 3 | * 4 | * @COPYRIGHT@ 5 | * @COPYRIGHT@ 6 | * 7 | * $Log: peer-done.c,v $ 8 | * Revision 1.4 2010/12/17 21:51:06 bruno 9 | * put a string in each executable that tells us when it was built. 10 | * 11 | * Revision 1.3 2010/03/15 23:05:56 bruno 12 | * tweaks 13 | * 14 | * Revision 1.2 2010/03/07 23:20:18 bruno 15 | * progress. can now run this as a non-root user -- should be able to run tests 16 | * on triton. 17 | * 18 | * Revision 1.1 2010/03/02 22:28:06 bruno 19 | * renamed stop-server to peer-done 20 | * 21 | * Revision 1.1 2010/02/24 20:27:32 bruno 22 | * moved new tracker from base roll to kernel roll 23 | * 24 | * Revision 1.1 2009/09/25 21:02:04 bruno 25 | * got prediction code in 26 | * 27 | */ 28 | 29 | #include 30 | #include 31 | #include 32 | #include 33 | #include 34 | #include 35 | #include 36 | #include 37 | #include 38 | #include 39 | #include 40 | #include 41 | #include 42 | #include 43 | #include "tracker.h" 44 | #include 45 | #include 46 | 47 | static char builton[] = { "Built on: " __DATE__ " " __TIME__ }; 48 | 49 | extern int init(uint16_t *, char *, in_addr_t *, uint16_t *, char *, uint16_t *, 50 | in_addr_t *); 51 | extern int init_tracker_comm(int); 52 | extern int send_msg(int, in_addr_t *, uint16_t); 53 | 54 | int 55 | main() 56 | { 57 | uint16_t num_trackers; 58 | in_addr_t trackers[MAX_TRACKERS]; 59 | uint16_t maxpeers; 60 | uint16_t num_pkg_servers; 61 | in_addr_t pkg_servers[MAX_PKG_SERVERS]; 62 | int i; 63 | int sockfd; 64 | char trackers_url[256]; 65 | char pkg_servers_url[256]; 66 | char buf[256]; 67 | FILE *file; 68 | 69 | if ((file = fopen("/tmp/rocks.conf", "r")) == NULL) { 70 | fprintf(stderr, "main:fopen\n"); 71 | return(-1); 72 | } 73 | 74 | fgets(buf, sizeof(buf), file); 75 | sscanf(buf, "var.trackers = \"%[^\"]", trackers_url); 76 | 77 | fgets(buf, sizeof(buf), file); 78 | sscanf(buf, "var.pkgservers = \"%[^\"]", pkg_servers_url); 79 | 80 | fclose(file); 81 | 82 | fprintf(stderr, "main:trackers_url (%s)\n", trackers_url); 83 | fprintf(stderr, "main:pkg_servers_url (%s)\n", pkg_servers_url); 84 | 85 | if (init(&num_trackers, trackers_url, trackers, &maxpeers, 86 | pkg_servers_url, &num_pkg_servers, pkg_servers) != 0) { 87 | fprintf(stderr, "main:init failed\n"); 88 | return(-1); 89 | } 90 | 91 | if ((sockfd = init_tracker_comm(0)) < 0) { 92 | fprintf(stderr, "main:init_tracker_comm failed\n"); 93 | return(-1); 94 | } 95 | 96 | for (i = 0 ; i < num_trackers; ++i) { 97 | send_msg(sockfd, &trackers[i], PEER_DONE); 98 | } 99 | 100 | return(0); 101 | } 102 | 103 | -------------------------------------------------------------------------------- /src/tracker/stop-server.c: -------------------------------------------------------------------------------- 1 | /* 2 | * $Id: stop-server.c,v 1.4 2010/12/17 21:51:06 bruno Exp $ 3 | * 4 | * @COPYRIGHT@ 5 | * @COPYRIGHT@ 6 | * 7 | * $Log: stop-server.c,v $ 8 | * Revision 1.4 2010/12/17 21:51:06 bruno 9 | * put a string in each executable that tells us when it was built. 10 | * 11 | * Revision 1.3 2010/03/15 23:05:56 bruno 12 | * tweaks 13 | * 14 | */ 15 | 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | #include 22 | #include 23 | #include 24 | #include 25 | #include 26 | #include 27 | #include 28 | #include 29 | #include 30 | #include "tracker.h" 31 | #include 32 | #include 33 | 34 | static char builton[] = { "Built on: " __DATE__ " " __TIME__ }; 35 | 36 | extern int init(uint16_t *, char *, in_addr_t *, uint16_t *, char *, uint16_t *, 37 | in_addr_t *); 38 | extern int init_tracker_comm(int); 39 | extern int send_msg(int, in_addr_t *, uint16_t); 40 | 41 | int 42 | main() 43 | { 44 | uint16_t num_trackers; 45 | in_addr_t trackers[MAX_TRACKERS]; 46 | uint16_t maxpeers; 47 | uint16_t num_pkg_servers; 48 | in_addr_t pkg_servers[MAX_PKG_SERVERS]; 49 | int i; 50 | int sockfd; 51 | char trackers_url[256]; 52 | char pkg_servers_url[256]; 53 | char buf[256]; 54 | FILE *file; 55 | 56 | if ((file = fopen("/tmp/rocks.conf", "r")) == NULL) { 57 | fprintf(stderr, "main:fopen\n"); 58 | return(-1); 59 | } 60 | 61 | fgets(buf, sizeof(buf), file); 62 | sscanf(buf, "var.trackers = \"%[^\"]", trackers_url); 63 | 64 | fgets(buf, sizeof(buf), file); 65 | sscanf(buf, "var.pkgservers = \"%[^\"]", pkg_servers_url); 66 | 67 | fclose(file); 68 | 69 | fprintf(stderr, "main:trackers_url (%s)\n", trackers_url); 70 | fprintf(stderr, "main:pkg_servers_url (%s)\n", pkg_servers_url); 71 | 72 | if (init(&num_trackers, trackers_url, trackers, &maxpeers, 73 | pkg_servers_url, &num_pkg_servers, pkg_servers) != 0) { 74 | fprintf(stderr, "main:init failed\n"); 75 | return(-1); 76 | } 77 | 78 | if ((sockfd = init_tracker_comm(0)) < 0) { 79 | fprintf(stderr, "main:init_tracker_comm failed\n"); 80 | return(-1); 81 | } 82 | 83 | for (i = 0 ; i < num_trackers; ++i) { 84 | send_msg(sockfd, &trackers[i], STOP_SERVER); 85 | } 86 | 87 | return(0); 88 | } 89 | 90 | -------------------------------------------------------------------------------- /src/tracker/tracker.ak: -------------------------------------------------------------------------------- 1 | #Emit tracker configuration 2 | #Interprets 3 | # tracker=[on|off|none] 4 | # - won't emit configuration is "off" of "none" is given 5 | # default: on 6 | # tracker.trackers=[;] 7 | # IP address(es) of hosts that run tracker-server 8 | # 9 | # tracker.pkgservers=[;] 10 | # IP address of host(s) of last resort if file cannot 11 | # be downloaded 12 | # usual usage: 13 | # cat /proc/cmdline | awk -f tracker.ak > /tmp/rocks.conf 14 | # 15 | BEGIN { 16 | enable = 1; 17 | trackers = ""; 18 | pkgservers = ""; 19 | } 20 | END { 21 | if (length(pkgservers) == 0) 22 | pkgservers = trackers; 23 | if (length(trackers) == 0) 24 | trackers=pkgservers; 25 | if (enable && length(trackers) > 0) 26 | { 27 | gsub(";"," ",trackers) 28 | gsub(";"," ",pkgservers) 29 | printf "var.trackers = \"%s\"\n", trackers 30 | printf "var.pkgservers = \"%s\"\n", pkgservers 31 | } 32 | } 33 | 34 | /tracker=[[:alpha:]]/ { 35 | split($0,comps,"tracker="); 36 | split(comps[2],vals); 37 | if (match(vals[1],"off") > 0 || match(vals[1],"none") > 0) 38 | enable = 0; 39 | } 40 | /tracker.trackers=[[:alnum:]]/ { 41 | split($0,comps,"tracker.trackers="); 42 | split(comps[2],vals); 43 | trackers=vals[1]; 44 | } 45 | /tracker.pkgservers=[[:alnum:]]/ { 46 | split($0,comps,"tracker.pkgservers="); 47 | split(comps[2],vals); 48 | pkgservers=vals[1]; 49 | } 50 | 51 | 52 | -------------------------------------------------------------------------------- /src/tracker/tracker.h: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | /* 5 | * hard-coded stuff 6 | */ 7 | #define TRACKER_PORT 9632 8 | #define PREDICTIONS 10 9 | #define PEERS_PER_PREDICTION 3 10 | #define DOWNLOAD_PORT 80 11 | #define MAX_TRACKERS 32 12 | #define MAX_PKG_SERVERS 32 13 | #define MAX_SHUFFLE_PEERS 64 14 | #define MAX_PEERS PEERS_PER_PREDICTION 15 | 16 | /* 17 | * don't know why this isn't in a standard include file 18 | */ 19 | #define min(a, b) ((a) < (b) ? (a) : (b)) 20 | 21 | /* 22 | * message structures 23 | */ 24 | 25 | typedef struct { 26 | uint16_t op; 27 | uint16_t length; 28 | uint32_t seqno; 29 | } tracker_header_t; 30 | 31 | typedef struct { 32 | in_addr_t ip; 33 | char state; 34 | } peer_t; 35 | 36 | /* 37 | * tracker message types 38 | */ 39 | #define LOOKUP 1 40 | #define REGISTER 2 41 | #define UNREGISTER 3 42 | #define PEER_DONE 4 43 | #define STOP_SERVER 5 44 | #define DUMP_TABLES 6 45 | 46 | /* 47 | * tracker 'states' 48 | */ 49 | #define DOWNLOADING 1 50 | #define READY 2 51 | 52 | /* 53 | * LOOKUP messages 54 | */ 55 | typedef struct { 56 | tracker_header_t header; 57 | uint64_t hash; 58 | } tracker_lookup_req_t; 59 | 60 | typedef struct { 61 | uint64_t hash; 62 | uint16_t numpeers; 63 | char pad[6]; /* align on 64-bit boundary */ 64 | peer_t peers[0]; 65 | } tracker_info_t; 66 | 67 | /* 68 | * hash_info_t is very similar to tracker_info_t. the main reason i'm not 69 | * using tracker_info_t in the hash table is because the 'peers[0]' structure 70 | * above doesn't not allow us to dynamically assign storage to 'peers' with 71 | * malloc() and realloc(). 72 | */ 73 | typedef struct { 74 | uint64_t hash; 75 | uint16_t numpeers; 76 | char pad[6]; /* align on 64-bit boundary */ 77 | peer_t *peers; 78 | } hash_info_t; 79 | 80 | typedef struct { 81 | tracker_header_t header; 82 | uint32_t numhashes; 83 | char pad[4]; /* 64-bit alignment */ 84 | tracker_info_t info[0]; 85 | } tracker_lookup_resp_t; 86 | 87 | 88 | /* 89 | * REGISTER messages 90 | */ 91 | 92 | /* 93 | * this is flexible enough to be able to register multiple files (hashes) or 94 | * register multiple files for multiple other peers 95 | */ 96 | typedef struct { 97 | tracker_header_t header; 98 | uint32_t numhashes; 99 | char pad[4]; /* 64-bit alignment */ 100 | tracker_info_t info[0]; 101 | } tracker_register_t; 102 | 103 | /* there is no response to a 'register' message */ 104 | 105 | /* 106 | * UNREGISTER messages 107 | */ 108 | 109 | /* 110 | * this is flexible enough to be able to unregister multiple files (hashes) or 111 | * unregister multiple files for multiple other peers 112 | */ 113 | typedef struct { 114 | tracker_header_t header; 115 | uint32_t numhashes; 116 | char pad[4]; /* 64-bit alignment */ 117 | tracker_info_t info[0]; 118 | } tracker_unregister_t; 119 | 120 | typedef struct { 121 | tracker_header_t header; 122 | } tracker_unregister_resp_t; 123 | 124 | /* 125 | * hash table to hold the order in which files are requested 126 | */ 127 | #define HASH_TABLE_ENTRIES 16384 128 | 129 | typedef struct { 130 | int head; 131 | int tail; 132 | uint32_t size; 133 | hash_info_t entry[0]; 134 | } hash_table_t; 135 | 136 | /* 137 | * downloads timestamp table. 138 | * 139 | * this table keeps track of the last time this server 'assigned' another 140 | * host as a download source for a specific hash. 141 | */ 142 | 143 | #define DT_TABLE_ENTRIES 128 144 | 145 | typedef struct { 146 | in_addr_t host; 147 | unsigned long long timestamp; /* gettimeofday in usecs */ 148 | char *coop; /* coop group */ 149 | } download_timestamp_t; 150 | 151 | typedef struct { 152 | uint32_t size; 153 | download_timestamp_t entry[0]; 154 | } dt_table_t; 155 | 156 | typedef struct { 157 | peer_t peer; 158 | unsigned long long timestamp; 159 | char *coop; 160 | } peer_timestamp_t; 161 | 162 | /* 163 | * prototypes 164 | */ 165 | extern uint64_t hashit(char *); 166 | extern int tracker_send(int, void *, size_t, struct sockaddr *, socklen_t); 167 | extern ssize_t tracker_recv(int, void *, size_t, struct sockaddr *, 168 | socklen_t *, struct timeval *); 169 | extern int init_tracker_comm(int); 170 | extern void dumpbuf(char *, int); 171 | -------------------------------------------------------------------------------- /src/tracker/unregister-file.c: -------------------------------------------------------------------------------- 1 | /* 2 | * $Id: unregister-file.c,v 1.4 2010/12/17 21:51:06 bruno Exp $ 3 | * 4 | * @COPYRIGHT@ 5 | * @COPYRIGHT@ 6 | * 7 | * $Log: unregister-file.c,v $ 8 | * Revision 1.4 2010/12/17 21:51:06 bruno 9 | * put a string in each executable that tells us when it was built. 10 | * 11 | * Revision 1.3 2010/10/12 19:39:21 bruno 12 | * allow a client to 'unregister' another client. this is useful when a client 13 | * detects a download error from another client. this is a way to nuke misbehaving 14 | * clients. 15 | * 16 | * Revision 1.2 2010/03/07 23:20:18 bruno 17 | * progress. can now run this as a non-root user -- should be able to run tests 18 | * on triton. 19 | * 20 | * Revision 1.1 2010/03/03 19:21:03 bruno 21 | * add code to 'unregister' a file and clean up the hash table when there are 22 | * no more peers for a hash. 23 | * 24 | */ 25 | 26 | #include 27 | #include 28 | #include 29 | #include 30 | #include 31 | #include 32 | #include 33 | #include 34 | #include 35 | #include 36 | #include 37 | #include 38 | #include 39 | #include 40 | #include 41 | #include "tracker.h" 42 | #include 43 | #include 44 | 45 | static char builton[] = { "Built on: " __DATE__ " " __TIME__ }; 46 | 47 | extern int init(uint16_t *, char *, in_addr_t *, uint16_t *, char *, uint16_t *, 48 | in_addr_t *); 49 | extern int unregister_hash(int, in_addr_t *, uint32_t, tracker_info_t *); 50 | extern void logmsg(const char *, ...); 51 | 52 | int status = HTTP_OK; 53 | 54 | int 55 | getargs(char *forminfo, char *filename) 56 | { 57 | char *ptr; 58 | 59 | /* 60 | * help out sscanf by putting in a blank for '&' 61 | */ 62 | while (1) { 63 | if ((ptr = strchr(forminfo, '&')) == NULL) { 64 | break; 65 | } 66 | 67 | *ptr = ' '; 68 | } 69 | 70 | if (sscanf(forminfo, "filename=%4095s", filename) != 1) { 71 | /* 72 | * XXX - log an error 73 | */ 74 | return(-1); 75 | } 76 | 77 | return(0); 78 | } 79 | int 80 | unregister_file(char *filename) 81 | { 82 | uint64_t hash; 83 | uint16_t num_trackers; 84 | in_addr_t trackers[MAX_TRACKERS]; 85 | uint16_t maxpeers; 86 | uint16_t num_pkg_servers; 87 | in_addr_t pkg_servers[MAX_PKG_SERVERS]; 88 | tracker_info_t *info; 89 | int sockfd; 90 | int i; 91 | char trackers_url[256]; 92 | char pkg_servers_url[256]; 93 | FILE *file; 94 | char buf[PATH_MAX]; 95 | 96 | hash = hashit(filename); 97 | 98 | if ((file = fopen("/tmp/rocks.conf", "r")) == NULL) { 99 | logmsg("unregister_file:fopen failed\n"); 100 | return(-1); 101 | } 102 | 103 | fgets(buf, sizeof(buf), file); 104 | sscanf(buf, "var.trackers = \"%[^\"]", trackers_url); 105 | 106 | fgets(buf, sizeof(buf), file); 107 | sscanf(buf, "var.pkgservers = \"%[^\"]", pkg_servers_url); 108 | 109 | fclose(file); 110 | 111 | fprintf(stderr, "trackers_url %s\n", trackers_url); 112 | fprintf(stderr, "pkg_servers_url %s\n", pkg_servers_url); 113 | 114 | if (init(&num_trackers, trackers_url, trackers, &maxpeers, 115 | pkg_servers_url, &num_pkg_servers, pkg_servers) != 0) { 116 | logmsg("trackfile:init failed\n"); 117 | return(-1); 118 | } 119 | 120 | if ((sockfd = init_tracker_comm(0)) < 0) { 121 | logmsg("trackfile:init_tracker_comm failed\n"); 122 | return(-1); 123 | } 124 | 125 | bzero(buf, sizeof(buf)); 126 | info = (tracker_info_t *)buf; 127 | 128 | info->hash = hash; 129 | info->numpeers = 1; 130 | info->peers[0].ip = inet_addr("10.1.255.254"); 131 | 132 | for (i = 0 ; i < num_trackers; ++i) { 133 | unregister_hash(sockfd, &trackers[i], 1, info); 134 | } 135 | 136 | return(0); 137 | } 138 | 139 | int 140 | main() 141 | { 142 | char *forminfo; 143 | char filename[PATH_MAX]; 144 | 145 | bzero(filename, sizeof(filename)); 146 | 147 | if ((forminfo = getenv("QUERY_STRING")) == NULL) { 148 | fprintf(stderr, "No QUERY_STRING\n"); 149 | return(0); 150 | } 151 | 152 | if (getargs(forminfo, filename) != 0) { 153 | fprintf(stderr, "getargs():failed\n"); 154 | return(0); 155 | } 156 | 157 | unregister_file(filename); 158 | 159 | return(0); 160 | } 161 | 162 | -------------------------------------------------------------------------------- /src/tracker/version.mk: -------------------------------------------------------------------------------- 1 | NAME = rocks-tracker 2 | RELEASE = 1 3 | PKGROOT = /opt/rocks 4 | RPM.FILES = /opt/rocks/bin/* 5 | -------------------------------------------------------------------------------- /version.mk: -------------------------------------------------------------------------------- 1 | ROLLNAME = kernel 2 | RELEASE = 1 3 | COLOR = firebrick 4 | 5 | REDHAT.ROOT = $(PWD) 6 | BOOTABLE = 1 7 | 8 | #KICKSTART_LANG = "ko_KR" 9 | #KICKSTART_LANGSUPPORT = "ko_KR.UTF-8 ko_KR ko en_US.UTF-8 en_US" 10 | 11 | KICKSTART_LANG = "en_US" 12 | KICKSTART_LANGSUPPORT = "en_US" 13 | 14 | ISOSIZE = 0 15 | --------------------------------------------------------------------------------