Changeset 46e10b9


Ignore:
Timestamp:
06/12/13 13:50:34 (14 months ago)
Author:
Kris Moore <kris@…>
Branches:
master, 9.2-release, releng/10.0, releng/10.0.1, releng/10.0.2
Children:
4f9718b
Parents:
6c1dd87 (diff), c3d5c5b (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge branch 'master' of github.com:pcbsd/pcbsd

Files:
3 added
16 edited

Legend:

Unmodified
Added
Removed
  • src-qt4/about-gui/i18n/AboutGui_sa.ts

    r8838493 rfb928f2  
    11<?xml version="1.0" encoding="utf-8"?> 
    22<!DOCTYPE TS> 
    3 <TS version="2.0"> 
    4 <context> 
    5     <name>MainWindow</name> 
    6     <message> 
    7         <location filename="../mainwindow.ui" line="14"/> 
    8         <source>About</source> 
    9         <translation type="unfinished"></translation> 
    10     </message> 
    11     <message> 
    12         <location filename="../mainwindow.ui" line="97"/> 
    13         <location filename="../mainwindow.ui" line="244"/> 
    14         <source>Version:</source> 
    15         <translation type="unfinished"></translation> 
    16     </message> 
    17     <message> 
    18         <location filename="../mainwindow.ui" line="104"/> 
    19         <location filename="../mainwindow.ui" line="251"/> 
    20         <location filename="../mainwindow.ui" line="274"/> 
    21         <location filename="../mainwindow.ui" line="297"/> 
    22         <location filename="../mainwindow.ui" line="343"/> 
    23         <location filename="../mainwindow.ui" line="366"/> 
    24         <location filename="../mainwindow.ui" line="488"/> 
    25         <location filename="../mainwindow.ui" line="528"/> 
    26         <location filename="../mainwindow.ui" line="568"/> 
    27         <source>&lt;Unknown&gt;</source> 
    28         <translation type="unfinished"></translation> 
    29     </message> 
    30     <message> 
    31         <location filename="../mainwindow.ui" line="193"/> 
    32         <source>Host:</source> 
    33         <translation type="unfinished"></translation> 
    34     </message> 
    35     <message> 
    36         <location filename="../mainwindow.ui" line="200"/> 
    37         <source>????</source> 
    38         <translation type="unfinished"></translation> 
    39     </message> 
    40     <message> 
    41         <location filename="../mainwindow.ui" line="232"/> 
    42         <source>FreeBSD base</source> 
    43         <translation type="unfinished"></translation> 
    44     </message> 
    45     <message> 
    46         <location filename="../mainwindow.ui" line="267"/> 
    47         <source>Arch:</source> 
    48         <translation type="unfinished"></translation> 
    49     </message> 
    50     <message> 
    51         <location filename="../mainwindow.ui" line="290"/> 
    52         <source>ident</source> 
    53         <translation type="unfinished"></translation> 
    54     </message> 
    55     <message> 
    56         <location filename="../mainwindow.ui" line="310"/> 
    57         <source>System components...</source> 
    58         <translation type="unfinished"></translation> 
    59     </message> 
    60     <message> 
    61         <location filename="../mainwindow.ui" line="317"/> 
    62         <source>Desktop environments...</source> 
    63         <translation type="unfinished"></translation> 
    64     </message> 
    65     <message> 
    66         <location filename="../mainwindow.ui" line="324"/> 
    67         <source>Hardware</source> 
    68         <translation type="unfinished"></translation> 
    69     </message> 
    70     <message> 
    71         <location filename="../mainwindow.ui" line="336"/> 
    72         <source>CPU:</source> 
    73         <translation type="unfinished"></translation> 
    74     </message> 
    75     <message> 
    76         <location filename="../mainwindow.ui" line="359"/> 
    77         <source>Mem.</source> 
    78         <translation type="unfinished"></translation> 
    79     </message> 
    80     <message> 
    81         <location filename="../mainwindow.ui" line="385"/> 
    82         <location filename="../mainwindow.ui" line="451"/> 
    83         <source>Back</source> 
    84         <translation type="unfinished"></translation> 
    85     </message> 
    86     <message> 
    87         <location filename="../mainwindow.ui" line="409"/> 
    88         <source>Desktop environments:</source> 
    89         <translation type="unfinished"></translation> 
    90     </message> 
    91     <message> 
    92         <location filename="../mainwindow.ui" line="416"/> 
    93         <source>(Please wait...)</source> 
    94         <translation type="unfinished"></translation> 
    95     </message> 
    96     <message> 
    97         <location filename="../mainwindow.ui" line="426"/> 
    98         <source>Name</source> 
    99         <translation type="unfinished"></translation> 
    100     </message> 
    101     <message> 
    102         <location filename="../mainwindow.ui" line="437"/> 
    103         <source>Version</source> 
    104         <translation type="unfinished"></translation> 
    105     </message> 
    106     <message> 
    107         <location filename="../mainwindow.ui" line="481"/> 
    108         <source>X.org server version:</source> 
    109         <translation type="unfinished"></translation> 
    110     </message> 
    111     <message> 
    112         <location filename="../mainwindow.ui" line="521"/> 
    113         <source>PC-BSD CLI utilities:</source> 
    114         <translation type="unfinished"></translation> 
    115     </message> 
    116     <message> 
    117         <location filename="../mainwindow.ui" line="561"/> 
    118         <source>PC-BSD UI utilities:</source> 
    119         <translation type="unfinished"></translation> 
    120     </message> 
    121     <message> 
    122         <location filename="../mainwindow.ui" line="625"/> 
    123         <source>Close</source> 
    124         <translation type="unfinished"></translation> 
    125     </message> 
    126     <message> 
    127         <location filename="../mainwindow.cpp" line="100"/> 
    128         <source>Testing snapshot %1. May be unstable!</source> 
    129         <translation type="unfinished"></translation> 
    130     </message> 
    131 </context> 
     3<TS> 
     4    <context> 
     5        <name>MainWindow</name> 
     6        <message> 
     7            <source>About</source> 
     8            <translation type="unfinished"> 
     9            </translation> 
     10        </message> 
     11        <message> 
     12            <source>Version:</source> 
     13            <translation type="unfinished"> 
     14            </translation> 
     15        </message> 
     16        <message> 
     17            <source>&lt;Unknown&gt;</source> 
     18            <translation type="unfinished"> 
     19            </translation> 
     20        </message> 
     21        <message> 
     22            <source>Host:</source> 
     23            <translation type="unfinished"> 
     24            </translation> 
     25        </message> 
     26        <message> 
     27            <source>????</source> 
     28            <translation type="unfinished"> 
     29            </translation> 
     30        </message> 
     31        <message> 
     32            <source>FreeBSD base</source> 
     33            <translation type="unfinished"> 
     34            </translation> 
     35        </message> 
     36        <message> 
     37            <source>Arch:</source> 
     38            <translation type="unfinished"> 
     39            </translation> 
     40        </message> 
     41        <message> 
     42            <source>ident</source> 
     43            <translation type="unfinished"> 
     44            </translation> 
     45        </message> 
     46        <message> 
     47            <source>System components...</source> 
     48            <translation type="unfinished"> 
     49            </translation> 
     50        </message> 
     51        <message> 
     52            <source>Desktop environments...</source> 
     53            <translation type="unfinished"> 
     54            </translation> 
     55        </message> 
     56        <message> 
     57            <source>Hardware</source> 
     58            <translation type="unfinished"> 
     59            </translation> 
     60        </message> 
     61        <message> 
     62            <source>CPU:</source> 
     63            <translation type="unfinished"> 
     64            </translation> 
     65        </message> 
     66        <message> 
     67            <source>Mem.</source> 
     68            <translation type="unfinished"> 
     69            </translation> 
     70        </message> 
     71        <message> 
     72            <source>Back</source> 
     73            <translation type="unfinished"> 
     74            </translation> 
     75        </message> 
     76        <message> 
     77            <source>Desktop environments:</source> 
     78            <translation type="unfinished"> 
     79            </translation> 
     80        </message> 
     81        <message> 
     82            <source>(Please wait...)</source> 
     83            <translation type="unfinished"> 
     84            </translation> 
     85        </message> 
     86        <message> 
     87            <source>Name</source> 
     88            <translation type="unfinished"> 
     89            </translation> 
     90        </message> 
     91        <message> 
     92            <source>Version</source> 
     93            <translation type="unfinished"> 
     94            </translation> 
     95        </message> 
     96        <message> 
     97            <source>X.org server version:</source> 
     98            <translation type="unfinished"> 
     99            </translation> 
     100        </message> 
     101        <message> 
     102            <source>PC-BSD CLI utilities:</source> 
     103            <translation type="unfinished"> 
     104            </translation> 
     105        </message> 
     106        <message> 
     107            <source>PC-BSD UI utilities:</source> 
     108            <translation type="unfinished"> 
     109            </translation> 
     110        </message> 
     111        <message> 
     112            <source>Close</source> 
     113            <translation type="unfinished"> 
     114            </translation> 
     115        </message> 
     116        <message> 
     117            <source>Testing snapshot %1. May be unstable!</source> 
     118            <translation type="unfinished"> 
     119            </translation> 
     120        </message> 
     121    </context> 
    132122</TS> 
  • src-qt4/pc-controlpanel/items/de/lxde-xscreensaver.desktop

    r0961263 rc3d5c5b  
    1010Name=Screensaver Preferences 
    1111Name[ar]=تفضيلات حاف؞ة ال؎ا؎ة 
     12Name[bg]=НастрПйкО Ма Screensaver 
    1213Name[bs]=PodeÅ¡avanja čuvara ekrana 
    1314Name[de]=Bildschirmschoner Einstellungen 
  • src-qt4/pc-firstbootgui/i18n/FirstBoot_el.ts

    re818ea3 rfb928f2  
    66        <message> 
    77            <source>Switch between US layout and user selected layout</source> 
    8             <translation type="unfinished"> 
    9             </translation> 
     8            <translation>ΕΜαλλαγή ΌεταΟύ της ΎιάταΟης τωΜ ΗΠΑ και της ΎιάταΟης ποϠ
     9 ÎµÏ€Î­Î»ÎµÎŸÎµ ο χρήστης.</translation> 
    1010        </message> 
    1111        <message> 
  • src-qt4/warden-gui/dialogEditIP.cpp

    rf7c535e red41975  
    2929  JailDir = pcbsd::Utils::getValFromPCConf("/usr/local/etc/warden.conf", "JDIR"); 
    3030  jailName = name; 
     31  QFile file; 
    3132  QString tmp; 
    3233 
     34  // Is VNET enabled? 
     35  file.setFileName( JailDir + "/." + jailName + ".meta/vnet" ); 
     36  if ( file.exists() ) 
     37    checkVNET->setChecked(true); 
     38 
    3339  // Lets start loading IP addresses 
    34   QFile file( JailDir + "/." + jailName + ".meta/ipv4" ); 
     40  file.setFileName( JailDir + "/." + jailName + ".meta/ipv4" ); 
    3541  if ( file.exists() && file.open( QIODevice::ReadOnly ) ) { 
    3642     QTextStream stream( &file ); tmp=""; tmp = stream.readLine(); 
     
    119125 
    120126  // Our buttons / slots 
     127  connect( checkVNET, SIGNAL( clicked() ), this, SLOT( slotCheckChecks() ) ); 
    121128  connect( checkIPv4, SIGNAL( clicked() ), this, SLOT( slotCheckChecks() ) ); 
    122129  connect( checkIPv4Bridge, SIGNAL( clicked() ), this, SLOT( slotCheckChecks() ) ); 
     
    263270  lineIP6Router->setEnabled(checkIPv6Router->isChecked()); 
    264271 
     272  // Enable / disable VNET only options 
     273  if ( checkVNET->isChecked() ) 
     274  { 
     275    lineIPBridge->setEnabled(checkIPv4Bridge->isChecked()); 
     276    lineIPRouter->setEnabled(checkIPv4Router->isChecked()); 
     277    lineIP6Bridge->setEnabled(checkIPv6Bridge->isChecked()); 
     278    lineIP6Router->setEnabled(checkIPv6Router->isChecked()); 
     279    checkIPv4Bridge->setEnabled(true); 
     280    checkIPv4Router->setEnabled(true); 
     281    checkIPv6Bridge->setEnabled(true); 
     282    checkIPv6Router->setEnabled(true); 
     283  } else { 
     284    lineIPBridge->setEnabled(false); 
     285    lineIPRouter->setEnabled(false); 
     286    lineIP6Bridge->setEnabled(false); 
     287    lineIP6Router->setEnabled(false); 
     288    checkIPv4Bridge->setEnabled(false); 
     289    checkIPv4Router->setEnabled(false); 
     290    checkIPv6Bridge->setEnabled(false); 
     291    checkIPv6Router->setEnabled(false); 
     292  } 
     293 
    265294} 
    266295 
     
    317346 
    318347  // Start saving settings 
     348  file.setFileName( JailDir + "/." + jailName + ".meta/vnet" ); 
     349  if ( checkVNET->isChecked() ) { 
     350    if ( file.open( QIODevice::WriteOnly ) ) { 
     351       QTextStream stream( &file ); 
     352         stream << ""; 
     353       file.close(); 
     354    } 
     355  } else { 
     356    file.remove(); 
     357  } 
     358 
    319359  file.setFileName( JailDir + "/." + jailName + ".meta/alias-ipv4" ); 
    320360  if ( ! IPv4Alias.isEmpty() ) { 
  • src-qt4/warden-gui/dialogEditIP.ui

    rf7c535e red41975  
    3030         <number>0</number> 
    3131        </property> 
     32        <widget class="QWidget" name="tabConfig"> 
     33         <attribute name="title"> 
     34          <string>Options</string> 
     35         </attribute> 
     36         <layout class="QGridLayout" name="gridLayout_7"> 
     37          <item row="0" column="0"> 
     38           <widget class="QCheckBox" name="checkVNET"> 
     39            <property name="text"> 
     40             <string>Enable VNET / VIMAGE support</string> 
     41            </property> 
     42           </widget> 
     43          </item> 
     44          <item row="1" column="0"> 
     45           <spacer name="verticalSpacer_3"> 
     46            <property name="orientation"> 
     47             <enum>Qt::Vertical</enum> 
     48            </property> 
     49            <property name="sizeHint" stdset="0"> 
     50             <size> 
     51              <width>20</width> 
     52              <height>271</height> 
     53             </size> 
     54            </property> 
     55           </spacer> 
     56          </item> 
     57         </layout> 
     58        </widget> 
    3259        <widget class="QWidget" name="tab"> 
    3360         <attribute name="title"> 
     
    6188           <widget class="QCheckBox" name="checkIPv4Bridge"> 
    6289            <property name="text"> 
    63              <string>IPv4 Bridge Address</string> 
     90             <string>IPv4 Bridge Address (Requires VNET)</string> 
    6491            </property> 
    6592           </widget> 
     
    75102           <widget class="QCheckBox" name="checkIPv4Router"> 
    76103            <property name="text"> 
    77              <string>IPv4 Default Router</string> 
     104             <string>IPv4 Default Router (Requires VNET)</string> 
    78105            </property> 
    79106           </widget> 
     
    123150           <widget class="QCheckBox" name="checkIPv6Bridge"> 
    124151            <property name="text"> 
    125              <string>IPv6 Bridge Address</string> 
     152             <string>IPv6 Bridge Address (Requires VNET)</string> 
    126153            </property> 
    127154           </widget> 
     
    137164           <widget class="QCheckBox" name="checkIPv6Router"> 
    138165            <property name="text"> 
    139              <string>IPv6 Default Router</string> 
     166             <string>IPv6 Default Router (Requires VNET)</string> 
    140167            </property> 
    141168           </widget> 
  • src-qt4/warden-gui/dialogdisplayoutput.ui

    r1620346 r6c1dd87  
    6666   </item> 
    6767   <item row="0" column="0"> 
    68     <widget class="QTextEdit" name="lineDisplay"/> 
     68    <widget class="QTextEdit" name="lineDisplay"> 
     69     <property name="readOnly"> 
     70      <bool>true</bool> 
     71     </property> 
     72    </widget> 
    6973   </item> 
    7074  </layout> 
  • src-qt4/warden-gui/dialogwarden.cpp

    r42584ef r6c1dd87  
    2525#include "dialogdisplayoutput.h" 
    2626#include "dialogimport.h" 
     27#include "dialogTemplates.h" 
    2728#include "wizardNewJail.h" 
    2829#include "pcbsd-utils.h" 
     
    899900      newJailWizard->setHostIPUsed(uH, uI); 
    900901       
    901       connect( newJailWizard, SIGNAL(create(const QString &, const QString &, const QString &, bool, bool, const QString &, bool, bool, bool, bool, const QString &)), this, SLOT(slotCreateNewJail(const QString &, const QString &, const QString &, bool, bool, const QString &, bool, bool, bool, bool, const QString &) ) ); 
     902      connect( newJailWizard, SIGNAL(create(const QString &, const QString &, const QString &, bool, bool, const QString &, bool, bool, bool, bool, const QString &, const QString &)), this, SLOT(slotCreateNewJail(const QString &, const QString &, const QString &, bool, bool, const QString &, bool, bool, bool, bool, const QString &, const QString &) ) ); 
    902903      newJailWizard->show(); 
    903904} 
    904905 
    905906 
    906 void dialogWarden::slotCreateNewJail( const QString &IP, const QString &IP6, const QString &host, bool tradjail, bool PCUtils, const QString &rootpw, bool src, bool ports, bool autostart, bool linuxJail, const QString &linuxScript ) 
     907void dialogWarden::slotCreateNewJail( const QString &IP, const QString &IP6, const QString &host, bool tradjail, bool PCUtils, const QString &rootpw, bool src, bool ports, bool autostart, bool linuxJail, const QString &linuxScript, const QString &tplate ) 
    907908{ 
    908909    if ( tradjail || linuxJail ) 
     
    940941        args << IP6; 
    941942      } 
     943 
     944      if ( ! linuxJail && ! tplate.isEmpty() ) 
     945        args << "--template" << tplate.section(" ", 0, 0); 
    942946 
    943947      if ( tradjail && ! PCUtils ) 
     
    16801684  this->raise(); 
    16811685} 
     1686 
     1687void dialogWarden::slotTemplateOpen() 
     1688{ 
     1689   tempDialog = new dialogTemplates(); 
     1690   tempDialog->programInit(); 
     1691   tempDialog->exec(); 
     1692} 
  • src-qt4/warden-gui/dialogwarden.h

    r42584ef r6c1dd87  
    66 
    77#include "ui_dialogwarden.h" 
     8#include "dialogTemplates.h" 
    89#include "dialogimport.h" 
    910#include "dialogEditIP.h" 
     
    5455    void slotReadPkgsOutput(); 
    5556    void slotClickedNewJail(); 
    56     void slotCreateNewJail( const QString &, const QString &, const QString &, bool, bool, const QString &, bool, bool, bool, bool, const QString & ); 
     57    void slotCreateNewJail( const QString &, const QString &, const QString &, bool, bool, const QString &, bool, bool, bool, bool, const QString &, const QString &); 
    5758    void slotReadCreateOutput(); 
    5859    void slotFinishedJailCreate(); 
     
    8889    void slotCronSnapshotChanged(); 
    8990 
     91    void slotTemplateOpen(); 
     92 
    9093private: 
    9194    void refreshJailDetailsView(); 
     
    100103    QString JailDir; 
    101104    dialogConfig *configDialog; 
     105    dialogTemplates *tempDialog; 
    102106    QString currentStatusWorkingJail; 
    103107    QString currentDetailsWorkingJail; 
  • src-qt4/warden-gui/dialogwarden.ui

    r42584ef r6c1dd87  
    10201020    <addaction name="fileImport_JailAction"/> 
    10211021    <addaction name="separator"/> 
     1022    <addaction name="actionTemplate_Manager"/> 
     1023    <addaction name="separator"/> 
    10221024    <addaction name="fileExitAction"/> 
    10231025   </widget> 
     
    10901092   <property name="name" stdset="0"> 
    10911093    <string notr="true">fileImport_JailAction</string> 
     1094   </property> 
     1095  </action> 
     1096  <action name="actionTemplate_Manager"> 
     1097   <property name="text"> 
     1098    <string>Template Manager</string> 
    10921099   </property> 
    10931100  </action> 
     
    11851192   </hints> 
    11861193  </connection> 
     1194  <connection> 
     1195   <sender>actionTemplate_Manager</sender> 
     1196   <signal>activated()</signal> 
     1197   <receiver>dialogWarden</receiver> 
     1198   <slot>slotTemplateOpen()</slot> 
     1199   <hints> 
     1200    <hint type="sourcelabel"> 
     1201     <x>-1</x> 
     1202     <y>-1</y> 
     1203    </hint> 
     1204    <hint type="destinationlabel"> 
     1205     <x>378</x> 
     1206     <y>333</y> 
     1207    </hint> 
     1208   </hints> 
     1209  </connection> 
    11871210 </connections> 
    11881211</ui> 
  • src-qt4/warden-gui/warden-gui.pro

    r24ef714 r6c1dd87  
    77INCLUDEPATH+= ../libpcbsd/ui ../libpcbsd/utils /usr/local/include 
    88 
    9 HEADERS += dialogwarden.h dialogconfig.h dialogimport.h dialogworking.h dialogdisplayoutput.h wizardNewJail.h dialogEditIP.h 
     9HEADERS += dialogwarden.h \ 
     10        dialogconfig.h \ 
     11        dialogimport.h \ 
     12        dialogworking.h \ 
     13        dialogdisplayoutput.h \ 
     14        wizardNewJail.h \ 
     15        dialogEditIP.h \ 
     16        dialogTemplates.h 
    1017 
    11 SOURCES += main.cpp dialogwarden.cpp dialogconfig.cpp dialogimport.cpp dialogworking.cpp dialogdisplayoutput.cpp wizardNewJail.cpp dialogEditIP.cpp 
     18SOURCES += main.cpp \ 
     19        dialogwarden.cpp \ 
     20        dialogconfig.cpp \ 
     21        dialogimport.cpp \ 
     22        dialogworking.cpp \ 
     23        dialogdisplayoutput.cpp \ 
     24        wizardNewJail.cpp \ 
     25        dialogEditIP.cpp \ 
     26        dialogTemplates.cpp 
    1227 
    1328FORMS   = dialogwarden.ui \ 
     
    1732        dialogimport.ui \ 
    1833        dialogworking.ui \ 
    19         wizardNewJail.ui 
     34        wizardNewJail.ui \ 
     35        dialogTemplates.ui 
    2036 
    2137TARGET  = warden-gui 
  • src-qt4/warden-gui/wizardNewJail.cpp

    r1620346 r6c1dd87  
    1313#include "pcbsd-utils.h" 
    1414#include <QDebug> 
     15#include <QProcess> 
    1516#include <QFileDialog> 
    1617 
     
    2930    connect(pushLinuxScript, SIGNAL(clicked()), this, SLOT(slotSelectLinuxScript()) ); 
    3031    connect(this, SIGNAL(currentIdChanged(int)), this, SLOT(slotCheckComplete()) ); 
     32    loadTemplates(); 
     33} 
     34 
     35void wizardNewJail::loadTemplates() 
     36{ 
     37   comboTemplate->clear(); 
     38   comboTemplate->addItem(tr("Use system version (default)")); 
     39   // Load any available templates 
     40   QProcess m; 
     41   m.start(QString("warden"), QStringList() << "template" << "list"); 
     42   while(m.state() == QProcess::Starting || m.state() == QProcess::Running) { 
     43      m.waitForFinished(200); 
     44      QCoreApplication::processEvents(); 
     45   } 
     46   int i = 0; 
     47   QString tmp; 
     48   while (m.canReadLine()) { 
     49     i++; 
     50     tmp = m.readLine().simplified(); 
     51     // Skip first two header lines 
     52     if ( i > 2) 
     53       comboTemplate->addItem(tmp); 
     54   } 
    3155} 
    3256 
     
    5478void wizardNewJail::accept() 
    5579{ 
    56     QString ip4, ip6; 
     80    QString ip4, ip6, tplate; 
    5781    if ( checkIPv4->isChecked() ) 
    5882       ip4 = lineIP->text(); 
    5983    if ( checkIPv6->isChecked() ) 
    6084       ip6 = lineIP6->text(); 
     85 
     86    if ( comboTemplate->currentIndex() != 0 ) 
     87    tplate = comboTemplate->currentText().section(" ", 0, 0); 
    6188     
    6289    emit create(ip4, ip6, lineHost->text(), radioTraditionalJail->isChecked(), checkPCBSDUtils->isChecked(), 
    6390                lineRoot->text(), checkSystemSource->isChecked(), checkPortsTree->isChecked(), 
    64                 checkAutostart->isChecked(), radioLinuxJail->isChecked(), lineLinuxScript->text()); 
     91                checkAutostart->isChecked(), radioLinuxJail->isChecked(), lineLinuxScript->text(), tplate); 
    6592    close(); 
    6693     
     
    119146 
    120147         // Check if we have a good IPV4 or IPV6 address 
    121          if ( ! pcbsd::Utils::validateIPV4(lineIP->text()) && ! pcbsd::Utils::validateIPV6(lineIP->text()) ) { 
     148         if ( checkIPv4->isChecked() && ! pcbsd::Utils::validateIPV4(lineIP->text())) { 
    122149           button(QWizard::NextButton)->setEnabled(false); 
    123150           lineIP->setPalette(badPal); 
     
    125152           return false; 
    126153         } 
     154 
     155         if ( checkIPv6->isChecked() && ! pcbsd::Utils::validateIPV6(lineIP6->text()) ) { 
     156           button(QWizard::NextButton)->setEnabled(false); 
     157           lineIP6->setPalette(badPal); 
     158           labelMessage->setText(tr("Invalid IPv6 address!")); 
     159           return false; 
     160         } 
     161 
    127162 
    128163         // Got to the end, must be good! 
  • src-qt4/warden-gui/wizardNewJail.h

    r1620346 r5dbb9c2  
    2929 
    3030private: 
     31    void loadTemplates(); 
    3132    bool validatePage(); 
    3233    QStringList usedHosts, usedIP; 
     
    3435 
    3536signals: 
    36      void create(const QString &, const QString &, const QString &, bool, bool, const QString &,  bool, bool, bool, bool, const QString &); 
     37     void create(const QString &, const QString &, const QString &, bool, bool, const QString &,  bool, bool, bool, bool, const QString &, const QString &); 
    3738} ; 
    3839#endif // WIZARDCREATEJAIL_H 
  • src-qt4/warden-gui/wizardNewJail.ui

    r1620346 re6d4539  
    1515  </property> 
    1616  <widget class="QWizardPage" name="Page_IP"> 
    17    <layout class="QGridLayout" name="gridLayout_9"> 
    18     <item row="0" column="0" rowspan="6"> 
     17   <layout class="QGridLayout" name="gridLayout_2"> 
     18    <item row="0" column="0" rowspan="4"> 
    1919     <layout class="QVBoxLayout" name="verticalLayout_3"> 
    2020      <item> 
     
    7777     </spacer> 
    7878    </item> 
    79     <item row="1" column="1" colspan="2"> 
     79    <item row="1" column="1" colspan="3"> 
    8080     <widget class="QLabel" name="label"> 
    8181      <property name="sizePolicy"> 
     
    9696     </widget> 
    9797    </item> 
    98     <item row="1" column="3" rowspan="3"> 
     98    <item row="1" column="4" rowspan="3"> 
    9999     <spacer name="horizontalSpacer_2"> 
    100100      <property name="orientation"> 
     
    112112     </spacer> 
    113113    </item> 
    114     <item row="2" column="1" colspan="2"> 
     114    <item row="2" column="1" colspan="3"> 
    115115     <spacer name="verticalSpacer_3"> 
    116116      <property name="orientation"> 
     
    128128     </spacer> 
    129129    </item> 
     130    <item row="3" column="1"> 
     131     <spacer name="horizontalSpacer"> 
     132      <property name="orientation"> 
     133       <enum>Qt::Horizontal</enum> 
     134      </property> 
     135      <property name="sizeType"> 
     136       <enum>QSizePolicy::Minimum</enum> 
     137      </property> 
     138      <property name="sizeHint" stdset="0"> 
     139       <size> 
     140        <width>40</width> 
     141        <height>58</height> 
     142       </size> 
     143      </property> 
     144     </spacer> 
     145    </item> 
    130146    <item row="3" column="2"> 
    131      <layout class="QGridLayout" name="gridLayout_2"> 
     147     <layout class="QGridLayout" name="gridLayout"> 
    132148      <item row="0" column="0"> 
    133        <spacer name="horizontalSpacer"> 
    134         <property name="orientation"> 
    135          <enum>Qt::Horizontal</enum> 
    136         </property> 
    137         <property name="sizeType"> 
    138          <enum>QSizePolicy::Minimum</enum> 
    139         </property> 
    140         <property name="sizeHint" stdset="0"> 
    141          <size> 
    142           <width>40</width> 
    143           <height>58</height> 
    144          </size> 
    145         </property> 
    146        </spacer> 
    147       </item> 
    148       <item row="0" column="1"> 
    149        <layout class="QGridLayout" name="gridLayout"> 
    150         <item row="0" column="0"> 
    151          <widget class="QLabel" name="textLabel1_2"> 
    152           <property name="text"> 
    153            <string>Hostname</string> 
    154           </property> 
    155           <property name="alignment"> 
    156            <set>Qt::AlignCenter</set> 
    157           </property> 
    158           <property name="wordWrap"> 
    159            <bool>false</bool> 
    160           </property> 
    161          </widget> 
    162         </item> 
    163         <item row="4" column="0"> 
    164          <widget class="QLineEdit" name="lineIP"> 
    165           <property name="enabled"> 
    166            <bool>true</bool> 
    167           </property> 
    168           <property name="inputMask"> 
    169            <string notr="true"/> 
    170           </property> 
    171           <property name="alignment"> 
    172            <set>Qt::AlignHCenter</set> 
    173           </property> 
    174          </widget> 
    175         </item> 
    176         <item row="3" column="0"> 
    177          <widget class="QCheckBox" name="checkIPv4"> 
    178           <property name="text"> 
    179            <string>IPv4 Address</string> 
    180           </property> 
    181           <property name="checked"> 
    182            <bool>true</bool> 
    183           </property> 
    184          </widget> 
    185         </item> 
    186         <item row="1" column="0"> 
    187          <widget class="QLineEdit" name="lineHost"> 
    188           <property name="text"> 
    189            <string>Jailbird</string> 
    190           </property> 
    191           <property name="alignment"> 
    192            <set>Qt::AlignHCenter</set> 
    193           </property> 
    194          </widget> 
    195         </item> 
    196         <item row="5" column="0"> 
    197          <widget class="QCheckBox" name="checkIPv6"> 
    198           <property name="text"> 
    199            <string>IPv6 Address</string> 
    200           </property> 
    201          </widget> 
    202         </item> 
    203         <item row="6" column="0"> 
    204          <widget class="QLineEdit" name="lineIP6"> 
    205           <property name="enabled"> 
    206            <bool>false</bool> 
    207           </property> 
    208          </widget> 
    209         </item> 
    210         <item row="2" column="0"> 
    211          <spacer name="verticalSpacer_23"> 
    212           <property name="orientation"> 
    213            <enum>Qt::Vertical</enum> 
    214           </property> 
    215           <property name="sizeHint" stdset="0"> 
    216            <size> 
    217             <width>20</width> 
    218             <height>40</height> 
    219            </size> 
    220           </property> 
    221          </spacer> 
    222         </item> 
    223        </layout> 
    224       </item> 
    225       <item row="0" column="2"> 
    226        <spacer name="horizontalSpacer_3"> 
    227         <property name="orientation"> 
    228          <enum>Qt::Horizontal</enum> 
    229         </property> 
    230         <property name="sizeType"> 
    231          <enum>QSizePolicy::Minimum</enum> 
    232         </property> 
    233         <property name="sizeHint" stdset="0"> 
    234          <size> 
    235           <width>40</width> 
    236           <height>20</height> 
    237          </size> 
    238         </property> 
    239        </spacer> 
    240       </item> 
    241       <item row="1" column="1"> 
    242        <spacer name="verticalSpacer_4"> 
     149       <widget class="QLabel" name="textLabel1_2"> 
     150        <property name="text"> 
     151         <string>Hostname</string> 
     152        </property> 
     153        <property name="alignment"> 
     154         <set>Qt::AlignCenter</set> 
     155        </property> 
     156        <property name="wordWrap"> 
     157         <bool>false</bool> 
     158        </property> 
     159       </widget> 
     160      </item> 
     161      <item row="1" column="0"> 
     162       <widget class="QLineEdit" name="lineHost"> 
     163        <property name="text"> 
     164         <string>Jailbird</string> 
     165        </property> 
     166        <property name="alignment"> 
     167         <set>Qt::AlignHCenter</set> 
     168        </property> 
     169       </widget> 
     170      </item> 
     171      <item row="5" column="0"> 
     172       <widget class="QCheckBox" name="checkIPv6"> 
     173        <property name="text"> 
     174         <string>IPv6 Address</string> 
     175        </property> 
     176       </widget> 
     177      </item> 
     178      <item row="4" column="0"> 
     179       <widget class="QLineEdit" name="lineIP"> 
     180        <property name="enabled"> 
     181         <bool>true</bool> 
     182        </property> 
     183        <property name="inputMask"> 
     184         <string notr="true"/> 
     185        </property> 
     186        <property name="alignment"> 
     187         <set>Qt::AlignHCenter</set> 
     188        </property> 
     189       </widget> 
     190      </item> 
     191      <item row="3" column="0"> 
     192       <widget class="QCheckBox" name="checkIPv4"> 
     193        <property name="text"> 
     194         <string>IPv4 Address</string> 
     195        </property> 
     196        <property name="checked"> 
     197         <bool>true</bool> 
     198        </property> 
     199       </widget> 
     200      </item> 
     201      <item row="2" column="0"> 
     202       <spacer name="verticalSpacer_23"> 
    243203        <property name="orientation"> 
    244204         <enum>Qt::Vertical</enum> 
     
    247207         <size> 
    248208          <width>20</width> 
    249           <height>17</height> 
     209          <height>40</height> 
    250210         </size> 
    251211        </property> 
    252212       </spacer> 
    253213      </item> 
     214      <item row="6" column="0"> 
     215       <widget class="QLineEdit" name="lineIP6"> 
     216        <property name="enabled"> 
     217         <bool>false</bool> 
     218        </property> 
     219       </widget> 
     220      </item> 
    254221     </layout> 
    255222    </item> 
    256     <item row="5" column="1" colspan="2"> 
    257      <spacer name="verticalSpacer_2"> 
    258       <property name="orientation"> 
    259        <enum>Qt::Vertical</enum> 
    260       </property> 
    261       <property name="sizeHint" stdset="0"> 
    262        <size> 
    263         <width>387</width> 
    264         <height>22</height> 
    265        </size> 
    266       </property> 
    267      </spacer> 
    268     </item> 
    269     <item row="4" column="1" colspan="2"> 
     223    <item row="3" column="3"> 
     224     <spacer name="horizontalSpacer_3"> 
     225      <property name="orientation"> 
     226       <enum>Qt::Horizontal</enum> 
     227      </property> 
     228      <property name="sizeType"> 
     229       <enum>QSizePolicy::Minimum</enum> 
     230      </property> 
     231      <property name="sizeHint" stdset="0"> 
     232       <size> 
     233        <width>40</width> 
     234        <height>20</height> 
     235       </size> 
     236      </property> 
     237     </spacer> 
     238    </item> 
     239    <item row="4" column="2"> 
     240     <spacer name="verticalSpacer_4"> 
     241      <property name="orientation"> 
     242       <enum>Qt::Vertical</enum> 
     243      </property> 
     244      <property name="sizeHint" stdset="0"> 
     245       <size> 
     246        <width>335</width> 
     247        <height>13</height> 
     248       </size> 
     249      </property> 
     250     </spacer> 
     251    </item> 
     252    <item row="5" column="1"> 
    270253     <widget class="QLabel" name="labelMessage"> 
    271254      <property name="text"> 
     
    276259      </property> 
    277260     </widget> 
     261    </item> 
     262    <item row="6" column="1" colspan="3"> 
     263     <spacer name="verticalSpacer_2"> 
     264      <property name="orientation"> 
     265       <enum>Qt::Vertical</enum> 
     266      </property> 
     267      <property name="sizeHint" stdset="0"> 
     268       <size> 
     269        <width>387</width> 
     270        <height>22</height> 
     271       </size> 
     272      </property> 
     273     </spacer> 
    278274    </item> 
    279275   </layout> 
     
    281277  <widget class="QWizardPage" name="Page_Type"> 
    282278   <layout class="QGridLayout" name="gridLayout_4"> 
    283     <item row="0" column="0" rowspan="5"> 
     279    <item row="0" column="0" rowspan="4"> 
    284280     <layout class="QVBoxLayout" name="verticalLayout_6"> 
    285281      <item> 
     
    361357     </widget> 
    362358    </item> 
    363     <item row="1" column="2" rowspan="4"> 
     359    <item row="1" column="2" rowspan="3"> 
    364360     <spacer name="horizontalSpacer_5"> 
    365361      <property name="orientation"> 
     
    398394       <string>Jail Type</string> 
    399395      </property> 
    400       <layout class="QGridLayout" name="gridLayout_3"> 
     396      <layout class="QGridLayout" name="gridLayout_9"> 
    401397       <item row="0" column="0"> 
    402398        <widget class="QRadioButton" name="radioTraditionalJail"> 
     
    410406       </item> 
    411407       <item row="1" column="0"> 
    412         <layout class="QHBoxLayout" name="horizontalLayout_2"> 
    413          <item> 
    414           <spacer name="horizontalSpacer_10"> 
    415            <property name="orientation"> 
    416             <enum>Qt::Horizontal</enum> 
    417            </property> 
    418            <property name="sizeType"> 
    419             <enum>QSizePolicy::Fixed</enum> 
    420            </property> 
    421            <property name="sizeHint" stdset="0"> 
    422             <size> 
    423              <width>20</width> 
    424              <height>20</height> 
    425             </size> 
    426            </property> 
    427           </spacer> 
     408        <layout class="QGridLayout" name="gridLayout_3"> 
     409         <item row="0" column="0"> 
     410          <layout class="QHBoxLayout" name="horizontalLayout_2"> 
     411           <item> 
     412            <spacer name="horizontalSpacer_10"> 
     413             <property name="orientation"> 
     414              <enum>Qt::Horizontal</enum> 
     415             </property> 
     416             <property name="sizeType"> 
     417              <enum>QSizePolicy::Fixed</enum> 
     418             </property> 
     419             <property name="sizeHint" stdset="0"> 
     420              <size> 
     421               <width>20</width> 
     422               <height>20</height> 
     423              </size> 
     424             </property> 
     425            </spacer> 
     426           </item> 
     427           <item> 
     428            <widget class="QCheckBox" name="checkPCBSDUtils"> 
     429             <property name="text"> 
     430              <string>Install PKGNG and PC-BSD utilities</string> 
     431             </property> 
     432             <property name="checked"> 
     433              <bool>true</bool> 
     434             </property> 
     435            </widget> 
     436           </item> 
     437          </layout> 
    428438         </item> 
    429          <item> 
    430           <widget class="QCheckBox" name="checkPCBSDUtils"> 
    431            <property name="text"> 
    432             <string>Install PKGNG and PC-BSD utilities</string> 
    433            </property> 
    434            <property name="checked"> 
    435             <bool>true</bool> 
    436            </property> 
    437           </widget> 
     439         <item row="1" column="0"> 
     440          <layout class="QHBoxLayout" name="horizontalLayout_4"> 
     441           <item> 
     442            <spacer name="horizontalSpacer_12"> 
     443             <property name="orientation"> 
     444              <enum>Qt::Horizontal</enum> 
     445             </property> 
     446             <property name="sizeType"> 
     447              <enum>QSizePolicy::Fixed</enum> 
     448             </property> 
     449             <property name="sizeHint" stdset="0"> 
     450              <size> 
     451               <width>20</width> 
     452               <height>20</height> 
     453              </size> 
     454             </property> 
     455            </spacer> 
     456           </item> 
     457           <item> 
     458            <widget class="QLabel" name="label_9"> 
     459             <property name="text"> 
     460              <string>Jail Version</string> 
     461             </property> 
     462            </widget> 
     463           </item> 
     464          </layout> 
     465         </item> 
     466         <item row="2" column="0"> 
     467          <layout class="QHBoxLayout" name="horizontalLayout_3"> 
     468           <item> 
     469            <spacer name="horizontalSpacer_11"> 
     470             <property name="orientation"> 
     471              <enum>Qt::Horizontal</enum> 
     472             </property> 
     473             <property name="sizeType"> 
     474              <enum>QSizePolicy::Fixed</enum> 
     475             </property> 
     476             <property name="sizeHint" stdset="0"> 
     477              <size> 
     478               <width>20</width> 
     479               <height>20</height> 
     480              </size> 
     481             </property> 
     482            </spacer> 
     483           </item> 
     484           <item> 
     485            <widget class="QComboBox" name="comboTemplate"/> 
     486           </item> 
     487          </layout> 
    438488         </item> 
    439489        </layout> 
  • src-sh/warden/bin/warden

    rcea595b r9cc2f9c  
    727727         OPT="$2" 
    728728         case $OPT in 
    729             create) shift ; shift; ${PROGDIR}/scripts/backend/createtemplate.sh $* ;; 
    730             delete) delete_template $3 ;; 
     729            create) shift ; shift;  
     730                    # Read our flags 
     731                    while [ $# -gt 0 ]; do 
     732                    case $1 in 
     733                          -fbsd) shift 
     734                                 if [ -z "$1" ] ; then exit_err "No FreeBSD version specified"; fi 
     735                                 FBSDVER="${1}" 
     736                                 ;; 
     737                        -trueos) shift 
     738                                 if [ -z "$1" ] ; then exit_err "No TrueOS version specified"; fi 
     739                                 TRUEOSVER="${1}" 
     740                                 ;; 
     741                          -arch) shift 
     742                                 if [ -z "$1" ] ; then exit_err "No FreeBSD architecture specified"; fi 
     743                                 FBSDARCH="${1}" 
     744                                 ;; 
     745                           -tar) shift 
     746                                 if [ -z "$1" ] ; then exit_err "No tar file specified"; fi 
     747                                 if [ ! -e "$1" ] ; then exit_err "Could not find tar file: $1"; fi 
     748                                 FBSDTAR="${1}" 
     749                                 ;; 
     750                          -nick) shift 
     751                                 if [ -z "$1" ] ; then exit_err "No nickname specified"; fi 
     752                                 TNICK="`echo ${1} | sed 's| |_|g'`" 
     753                                 ;; 
     754                    -pluginjail) shift 
     755                                 TPLUGJAIL="YES" 
     756                                 ;; 
     757                              *) exit_err "Invalid option: $1" ;; 
     758                    esac 
     759                    shift 
     760                    done 
     761                    export TPLUGJAIL TNICK FBSDTAR FBSDARCH TRUEOSVER FBSDVER 
     762                    ${PROGDIR}/scripts/backend/createtemplate.sh ;; 
     763            delete) delete_template "$3" ;; 
    731764              list) list_templates ;; 
    732765                 *) help_template ; exit 1 ;; 
  • src-sh/warden/scripts/backend/createtemplate.sh

    r95952b3 r9cc2f9c  
    164164 
    165165 
    166 # Read our flags 
    167 while [ $# -gt 0 ]; do 
    168    case $1 in 
    169     -fbsd) shift 
    170            if [ -z "$1" ] ; then exit_err "No FreeBSD version specified"; fi 
    171            FBSDVER="${1}" 
    172            ;; 
    173   -trueos) shift 
    174            if [ -z "$1" ] ; then exit_err "No TrueOS version specified"; fi 
    175            TRUEOSVER="${1}" 
    176            ;; 
    177     -arch) shift 
    178            if [ -z "$1" ] ; then exit_err "No FreeBSD architecture specified"; fi 
    179            FBSDARCH="${1}" 
    180            ;; 
    181     -tar) shift 
    182            if [ -z "$1" ] ; then exit_err "No tar file specified"; fi 
    183            if [ ! -e "$1" ] ; then exit_err "Could not find tar file: $1"; fi 
    184            FBSDTAR="${1}" 
    185            ;; 
    186     -nick) shift 
    187            if [ -z "$1" ] ; then exit_err "No nickname specified"; fi 
    188            TNICK="${1}" 
    189            ;; 
    190  -pluginjail) shift 
    191            TPLUGJAIL="YES" 
    192            ;; 
    193         *) exit_err "Invalid option: $1" ;; 
    194    esac 
    195    shift 
    196 done 
    197  
    198166if [ -z "$TNICK" ] ; then exit_err "No nickname specified, use -nick <nickname>"; fi 
    199167if [ -z "$FBSDTAR" ] ; then  
  • src-sh/warden/scripts/backend/functions.sh

    rcee08ee rf70de07  
    10091009     tank=`getZFSTank "$tDir"` 
    10101010     rp=`getZFSRelativePath "$tDir"` 
    1011      zfs destroy -r $tank${rp} 
     1011     zfs destroy -r $tank${rp}  
     1012     if [ $? -ne 0 ] ; then 
     1013       exit_err "Could not remove template, perhaps you have jails still using it?" 
     1014     fi 
    10121015     rmdir ${tDir} 
    10131016   else 
     
    10171020     rm ${tDir}.tbz 
    10181021   fi 
     1022   echo "DONE" 
    10191023 
    10201024   exit 0 
Note: See TracChangeset for help on using the changeset viewer.