Hello community,
here is the log from the commit of package yast2-storage
checked in at Mon Jul 16 18:27:59 CEST 2007.
--------
--- yast2-storage/yast2-storage.changes 2007-07-02 18:10:27.000000000 +0200
+++ /mounts/work_src_done/STABLE/yast2-storage/yast2-storage.changes 2007-07-16 18:13:59.000000000 +0200
@@ -1,0 +2,28 @@
+Mon Jul 16 12:11:50 CEST 2007 - fehr@suse.de
+
+- mount ntfs rw as default, use ntfs-3g driver for ntfs (#247750)
+- do internal mounts readonly where possible
+- version 2.15.18
+
+-------------------------------------------------------------------
+Thu Jul 5 15:34:35 CEST 2007 - fehr@suse.de
+
+- fix wrong handling of disk initialisation (#287247)
+
+-------------------------------------------------------------------
+Wed Jul 4 16:40:10 CEST 2007 - fehr@suse.de
+
+- do not call Storage::GetMountBy in autoyast config mode (#288690)
+
+-------------------------------------------------------------------
+Tue Jul 3 16:50:38 CEST 2007 - fehr@suse.de
+
+- improve discrimination between EFI and win partitions (#287289)
+
+-------------------------------------------------------------------
+Mon Jul 2 19:36:31 CEST 2007 - fehr@suse.de
+
+- prevent some rpmlint warnings
+- create 1.0 md superblocks with a bitmap by default (#282807)
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ yast2-storage.spec ++++++
--- /var/tmp/diff_new_pack.c26739/_old 2007-07-16 18:27:27.000000000 +0200
+++ /var/tmp/diff_new_pack.c26739/_new 2007-07-16 18:27:27.000000000 +0200
@@ -12,7 +12,7 @@
Name: yast2-storage
Version: 2.15.18
-Release: 1
+Release: 4
License: GPL v2 or later
Group: System/YaST
BuildRoot: %{_tmppath}/%{name}-%{version}-build
@@ -64,6 +64,7 @@
%suse_update_desktop_file -d ycc_${d%.desktop} ${d%.desktop}
done
rm -f $RPM_BUILD_ROOT/%{_libdir}/YaST2/plugin/libpy2StorageCallbacks.la
+rm -f $RPM_BUILD_ROOT/%{_libdir}/YaST2/plugin/libpy2StorageCallbacks.so
%clean
rm -rf "$RPM_BUILD_ROOT"
@@ -103,7 +104,6 @@
/usr/share/YaST2/scrconf/*.scr
# libstorage ycp callbacks
%{_libdir}/YaST2/plugin/libpy2StorageCallbacks.so.*
-%{_libdir}/YaST2/plugin/libpy2StorageCallbacks.so
# disk
%dir %{prefix}/share/applications/YaST2
%{prefix}/share/applications/YaST2/disk.desktop
@@ -145,7 +145,7 @@
%files lib
%defattr(-,root,root)
-%{_libdir}/liby2storage.so*
+%{_libdir}/liby2storage.so.*
%post lib
/sbin/ldconfig
@@ -164,12 +164,26 @@
%files devel
%defattr(-,root,root)
%{_libdir}/liby2storage.la
+%{_libdir}/liby2storage.so
%{prefix}/include/YaST2
%doc %{prefix}/share/doc/packages/yast2-storage/examples
%doc %{prefix}/share/doc/packages/yast2-storage/libstorage
%doc %{prefix}/share/doc/packages/yast2-storage/config.xml.description
%changelog
+* Mon Jul 16 2007 - fehr@suse.de
+- mount ntfs rw as default, use ntfs-3g driver for ntfs (#247750)
+- do internal mounts readonly where possible
+- version 2.15.18
+* Thu Jul 05 2007 - fehr@suse.de
+- fix wrong handling of disk initialisation (#287247)
+* Wed Jul 04 2007 - fehr@suse.de
+- do not call Storage::GetMountBy in autoyast config mode (#288690)
+* Tue Jul 03 2007 - fehr@suse.de
+- improve discrimination between EFI and win partitions (#287289)
+* Mon Jul 02 2007 - fehr@suse.de
+- prevent some rpmlint warnings
+- create 1.0 md superblocks with a bitmap by default (#282807)
* Mon Jul 02 2007 - aschnell@suse.de
- handle old encryption types with cryptsetup (bug #258222)
* Mon Jul 02 2007 - fehr@suse.de
++++++ yast2-storage-2.15.18.tar.bz2 ++++++
++++ 30119 lines of diff (skipped)
++++ retrying with extended exclude list
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-storage-2.15.18/config.h.in new/yast2-storage-2.15.18/config.h.in
--- old/yast2-storage-2.15.18/config.h.in 2007-05-31 18:38:34.000000000 +0200
+++ new/yast2-storage-2.15.18/config.h.in 2007-07-16 16:07:10.000000000 +0200
@@ -65,7 +65,7 @@
/* If using the C implementation of alloca, define if you know the
direction of stack growth for your system; otherwise it will be
- automatically deduced at run-time.
+ automatically deduced at runtime.
STACK_DIRECTION > 0 => grows toward higher addresses
STACK_DIRECTION < 0 => grows toward lower addresses
STACK_DIRECTION = 0 => direction of growth unknown */
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-storage-2.15.18/configure.in new/yast2-storage-2.15.18/configure.in
--- old/yast2-storage-2.15.18/configure.in 2007-05-31 18:37:34.000000000 +0200
+++ new/yast2-storage-2.15.18/configure.in 2007-07-16 16:06:36.000000000 +0200
@@ -1,9 +1,9 @@
dnl configure.in for yast2-storage
dnl
-dnl -- This file is generated by y2autoconf 2.13.18 - DO NOT EDIT! --
+dnl -- This file is generated by y2autoconf 2.15.0 - DO NOT EDIT! --
dnl (edit configure.in.in instead)
-AC_INIT(yast2-storage, 2.15.14, http://bugs.opensuse.org/, yast2-storage)
+AC_INIT(yast2-storage, 2.15.18, http://bugs.opensuse.org/, yast2-storage)
dnl Check for presence of file 'RPMNAME'
AC_CONFIG_SRCDIR([RPMNAME])
@@ -17,7 +17,7 @@
AM_INIT_AUTOMAKE(tar-ustar) dnl searches for some needed programs
dnl Important YaST2 variables
-VERSION="2.15.14"
+VERSION="2.15.18"
RPMNAME="yast2-storage"
MAINTAINER="Thomas Fehr "
@@ -113,6 +113,8 @@
AC_MSG_ERROR(xgettext is missing; please install gettext-devel.)
fi
+Y2DEVTOOLS_PREFIX=`pkg-config --print-errors --variable=prefix yast2-devtools`
+AC_SUBST(Y2DEVTOOLS_PREFIX)
devtools_ybindir=`pkg-config --print-errors --variable=ybindir yast2-devtools`
devtools_yast2dir=`pkg-config --print-errors --variable=yast2dir yast2-devtools`
@@ -145,6 +147,9 @@
if test "$YCPC" = "false"; then
AC_MSG_ERROR([ycpc is not installed])
fi
+AC_CHECK_FILE($devtools_yast2dir/data/testsuite/Makefile.testsuite, [], [
+ AC_MSG_WARN([yast2-testsuite.rpm is not installed])
+])
AC_PATH_PROG(YDOXYGEN, ydoxygen, false, $PATH:$devtools_ybindir)
@@ -157,8 +162,8 @@
AC_PROG_CC
AC_PROG_CPP
-CFLAGS="${CFLAGS} -Wall -Wformat -Wmissing-prototypes"
-CXXFLAGS="${CXXFLAGS} -Wall -Wformat"
+CFLAGS="${CFLAGS} -Wall -Wformat=2 -Wmissing-prototypes"
+CXXFLAGS="${CXXFLAGS} -Wall -Wformat=2"
: ${AGENT_LIBADD:='-L$(libdir) -lscr'}
AC_SUBST(AGENT_LIBADD)
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-storage-2.15.18/libstorage/src/Disk.cc new/yast2-storage-2.15.18/libstorage/src/Disk.cc
--- old/yast2-storage-2.15.18/libstorage/src/Disk.cc 2007-05-31 15:41:27.000000000 +0200
+++ new/yast2-storage-2.15.18/libstorage/src/Disk.cc 2007-07-04 15:27:26.000000000 +0200
@@ -2261,10 +2261,14 @@
SystemCmd c;
cmd = "dd if=/dev/zero of=" + p->device() + " bs=1k count=200";
c.execute( cmd );
- cmd = "dd if=/dev/zero of=" + p->device() +
- " seek=" + decString(p->sizeK()-10) +
- " bs=1k count=10";
- c.execute( cmd );
+ unsigned long long pos = p->sizeK();
+ if( pos>200 )
+ {
+ pos -= 200;
+ cmd = "dd if=/dev/zero of=" + p->device() +
+ " seek=" + decString(pos) + " bs=1k count=10";
+ c.execute( cmd );
+ }
}
else if( !dmp_slave && !p->getFormat() )
{
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-storage-2.15.18/libstorage/src/EtcFstab.cc new/yast2-storage-2.15.18/libstorage/src/EtcFstab.cc
--- old/yast2-storage-2.15.18/libstorage/src/EtcFstab.cc 2007-05-23 12:45:15.000000000 +0200
+++ new/yast2-storage-2.15.18/libstorage/src/EtcFstab.cc 2007-07-16 12:04:18.000000000 +0200
@@ -63,6 +63,8 @@
p->old.dmcrypt = true;
p->old.encr = ENC_LUKS;
}
+ else if( p->old.fs=="ntfs-3g" )
+ p->old.fs=="ntfs";
}
if( i!=l.end() )
p->old.opts = splitString( *i++, "," );
@@ -100,7 +102,11 @@
if( i!=l.end() )
p->old.mount = *i++;
if( i!=l.end() )
+ {
p->old.fs = *i++;
+ if( p->old.fs=="ntfs-3g" )
+ p->old.fs=="ntfs";
+ }
if( i!=l.end() )
p->old.encr = Volume::toEncType( *i++ );
if( i!=l.end() )
@@ -476,7 +482,9 @@
if( e.dmcrypt && e.noauto )
ls.push_back( "crypt" );
else
- ls.push_back( e.fs );
+ {
+ ls.push_back( (e.fs!="ntfs")?e.fs:"ntfs-3g" );
+ }
if( e.crypto )
{
ls.push_back( Volume::encTypeString(e.encr) );
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-storage-2.15.18/libstorage/src/Md.cc new/yast2-storage-2.15.18/libstorage/src/Md.cc
--- old/yast2-storage-2.15.18/libstorage/src/Md.cc 2007-05-23 12:45:15.000000000 +0200
+++ new/yast2-storage-2.15.18/libstorage/src/Md.cc 2007-07-02 19:35:11.000000000 +0200
@@ -311,7 +311,10 @@
string cmd = "ls -l --full-time " + dnames + "; ";
cmd += "modprobe " + pName() + "; mdadm --create " + device() +
- " --run --level=" + pName();
+ " --run --level=" + pName() + " -e 1.0";
+ if (pName() == "raid1" || pName() == "raid5" || pName() == "raid6" ||
+ pName() == "raid10")
+ cmd += " -b internal";
if( chunk>0 )
cmd += " --chunk=" + decString(chunk);
if( md_parity!=PAR_NONE )
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-storage-2.15.18/libstorage/src/Storage.cc new/yast2-storage-2.15.18/libstorage/src/Storage.cc
--- old/yast2-storage-2.15.18/libstorage/src/Storage.cc 2007-07-02 18:07:38.000000000 +0200
+++ new/yast2-storage-2.15.18/libstorage/src/Storage.cc 2007-07-16 18:12:45.000000000 +0200
@@ -223,7 +223,7 @@
ProcPart* ppart = new ProcPart;
if( EvmsCo::canDoEvms() )
{
- char * file = "/etc/evms.conf";
+ const char * file = "/etc/evms.conf";
if( access( file, R_OK )==0 )
{
SystemCmd cmd( (string)"grep exclude " + file );
@@ -5580,11 +5580,11 @@
}
bool
-Storage::mountDevice( const string& device, const string& mp )
+Storage::mountDev( const string& device, const string& mp, bool ro )
{
bool ret = true;
assertInit();
- y2milestone( "device:%s mp:%s", device.c_str(), mp.c_str() );
+ y2milestone( "device:%s mp:%s ro:%d", device.c_str(), mp.c_str(), ro );
VolIterator vol;
if( !readonly && findVolume( device, vol ) )
{
@@ -5594,7 +5594,7 @@
}
if( ret )
{
- ret = vol->mount( mp )==0;
+ ret = vol->mount( mp, ro )==0;
}
if( !ret )
vol->crUnsetup();
@@ -5639,7 +5639,8 @@
bool
Storage::getFreeInfo( const string& device, unsigned long long& resize_free,
unsigned long long& df_free,
- unsigned long long& used, bool& win, bool use_cache )
+ unsigned long long& used, bool& win, bool& efi,
+ bool use_cache )
{
bool ret = false;
assertInit();
@@ -5649,7 +5650,7 @@
if( findVolume( device, vol ) )
{
if( use_cache && getFreeInf( vol->device(), df_free, resize_free,
- used, win, ret ))
+ used, win, efi, ret ))
{
}
else
@@ -5663,7 +5664,7 @@
unlink( mdir.c_str() );
rmdir( mdir.c_str() );
if( vol->getFs()!=FSUNKNOWN && mkdir( mdir.c_str(), 0700 )==0 &&
- mountDevice( device, mdir ) )
+ mountDev( device, mdir ) )
{
needUmount = true;
mp = mdir;
@@ -5713,8 +5714,8 @@
ret = false;
}
win = false;
- char * files[] = { "boot.ini", "msdos.sys", "io.sys",
- "config.sys", "MSDOS.SYS", "IO.SYS" };
+ const char * files[] = { "boot.ini", "msdos.sys", "io.sys",
+ "config.sys", "MSDOS.SYS", "IO.SYS" };
string f;
unsigned i=0;
while( !win && igetFs()==VFAT && checkDir( mp + "/efi" );
+ if( efi )
+ win = false;
}
if( needUmount )
{
@@ -5737,7 +5741,8 @@
if( !ret )
vol->crUnsetup();
}
- setFreeInfo( vol->device(), df_free, resize_free, used, win, ret );
+ setFreeInfo( vol->device(), df_free, resize_free, used, win, efi,
+ ret );
}
}
if( ret )
@@ -5749,19 +5754,21 @@
void Storage::setFreeInfo( const string& device, unsigned long long df_free,
unsigned long long resize_free,
- unsigned long long used, bool win, bool resize_ok )
+ unsigned long long used, bool win, bool efi,
+ bool resize_ok )
{
- y2milestone( "device:%s df_free:%llu resize_free:%llu used:%llu win:%d",
- device.c_str(), df_free, resize_free, used, win );
+ y2milestone( "device:%s df_free:%llu resize_free:%llu used:%llu win:%d efi:%d",
+ device.c_str(), df_free, resize_free, used, win, efi );
- FreeInfo inf( df_free, resize_free, used, win, resize_ok );
+ FreeInfo inf( df_free, resize_free, used, win, efi, resize_ok );
freeInfo[device] = inf;
}
bool
Storage::getFreeInf( const string& device, unsigned long long& df_free,
unsigned long long& resize_free,
- unsigned long long& used, bool& win, bool& resize_ok )
+ unsigned long long& used, bool& win, bool& efi,
+ bool& resize_ok )
{
map::iterator i = freeInfo.find( device );
bool ret = i!=freeInfo.end();
@@ -5771,12 +5778,13 @@
resize_free = i->second.resize_free;
used = i->second.used;
win = i->second.win;
+ efi = i->second.efi;
resize_ok = i->second.rok;
}
y2milestone( "device:%s ret:%d", device.c_str(), ret );
if( ret )
- y2milestone( "df_free:%llu resize_free:%llu used:%llu win:%d resize_ok:%d",
- df_free, resize_free, used, win, resize_ok );
+ y2milestone( "df_free:%llu resize_free:%llu used:%llu win:%d efi:%d resize_ok:%d",
+ df_free, resize_free, used, win, efi, resize_ok );
return( ret );
}
@@ -6028,7 +6036,7 @@
int Storage::waitForDevice() const
{
int ret = 0;
- char * prog = "/sbin/udevsettle";
+ const char * prog = "/sbin/udevsettle";
if( access( prog, X_OK )==0 )
{
string cmd( prog );
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-storage-2.15.18/libstorage/src/Storage.h new/yast2-storage-2.15.18/libstorage/src/Storage.h
--- old/yast2-storage-2.15.18/libstorage/src/Storage.h 2007-07-02 18:07:38.000000000 +0200
+++ new/yast2-storage-2.15.18/libstorage/src/Storage.h 2007-07-16 12:53:39.000000000 +0200
@@ -184,12 +184,15 @@
unsigned long long df_free;
unsigned long long used;
bool win;
+ bool efi;
bool rok;
- FreeInfo() { resize_free=df_free=used=0; win=rok=false; }
+ FreeInfo() { resize_free=df_free=used=0; efi=win=rok=false; }
FreeInfo( unsigned long long df,
unsigned long long resize,
- unsigned long long usd, bool w=false, bool r=true )
- { resize_free=resize; df_free=df; used=usd; win=w; rok=r; }
+ unsigned long long usd, bool w=false, bool e=false,
+ bool r=true )
+ { resize_free=resize; df_free=df; used=usd; win=w;
+ efi=e, rok=r; }
};
public:
@@ -352,11 +355,16 @@
int removeUsing( const string& device, const storage::usedBy& uby );
bool checkDeviceMounted( const string& device, string& mp );
bool umountDevice( const string& device );
- bool mountDevice( const string& device, const string& mp );
+ bool mountDev( const string& device, const string& mp, bool ro=true );
+ bool mountDevice( const string& device, const string& mp )
+ { return( mountDev( device, mp, false )); }
+ bool mountDeviceRo( const string& device, const string& mp )
+ { return( mountDev( device, mp, true )); }
bool readFstab( const string& dir, dequestorage::VolumeInfo& infos);
bool getFreeInfo( const string& device, unsigned long long& resize_free,
unsigned long long& df_free,
- unsigned long long& used, bool& win, bool use_cache );
+ unsigned long long& used, bool& win, bool& efi,
+ bool use_cache );
int createBackupState( const string& name );
int removeBackupState( const string& name );
int restoreBackupState( const string& name );
@@ -1614,10 +1622,12 @@
void deleteBackups();
void setFreeInfo( const string& device, unsigned long long df_free,
unsigned long long resize_free,
- unsigned long long used, bool win, bool resize_ok );
+ unsigned long long used, bool win, bool efi,
+ bool resize_ok );
bool getFreeInf( const string& device, unsigned long long& df_free,
unsigned long long& resize_free,
- unsigned long long& used, bool& win, bool& resize_ok );
+ unsigned long long& used, bool& win, bool& efi,
+ bool& resize_ok );
// protected internal member variables
bool readonly;
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-storage-2.15.18/libstorage/src/StorageInterface.h new/yast2-storage-2.15.18/libstorage/src/StorageInterface.h
--- old/yast2-storage-2.15.18/libstorage/src/StorageInterface.h 2007-05-23 12:45:15.000000000 +0200
+++ new/yast2-storage-2.15.18/libstorage/src/StorageInterface.h 2007-07-16 12:51:14.000000000 +0200
@@ -1950,6 +1950,17 @@
virtual bool mountDevice( const string& device, const string& mp ) = 0;
/**
+ * Mount the given device readonly and do what is necessary to access
+ * volume (e.g. do losetup if loop is set up)
+ * The function mounts at once, /etc/fstab is unaffected
+ *
+ * @param device device name to mount
+ * @param mp mount point to mount to
+ * @return bool if mount succeeded
+ */
+ virtual bool mountDeviceRo( const string& device, const string& mp ) = 0;
+
+ /**
* Check if there are dm maps to a given device
*
* @param device device name for which dm maps should be checked
@@ -1979,7 +1990,7 @@
unsigned long long& resize_free,
unsigned long long& df_free,
unsigned long long& used,
- bool& win, bool use_cache ) = 0;
+ bool& win, bool& efi, bool use_cache ) = 0;
/**
* Read fstab and cryptotab, if existent, from a specified directory and
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-storage-2.15.18/libstorage/src/Volume.cc new/yast2-storage-2.15.18/libstorage/src/Volume.cc
--- old/yast2-storage-2.15.18/libstorage/src/Volume.cc 2007-07-02 18:07:38.000000000 +0200
+++ new/yast2-storage-2.15.18/libstorage/src/Volume.cc 2007-07-16 12:57:20.000000000 +0200
@@ -688,13 +688,13 @@
string cmd = "/bin/dd if=";
cmd += (encryption!=ENC_NONE) ? "/dev/urandom" : "/dev/zero";
cmd += " of=" + mountDevice() + " bs=1024 count=";
- cmd += decString(min(100ull,size_k));
+ cmd += decString(min(200ull,size_k));
if( c.execute( cmd ) != 0 )
ret = VOLUME_FORMAT_DD_FAILED;
ofstream s( mountDevice().c_str() );
ofstream::pos_type p = s.seekp( 0, ios_base::end ).tellp();
y2mil( "good:" << s.good() << " pos_type:" << p );
- const unsigned count=32;
+ const unsigned count=200;
const unsigned bufsize=1024;
if( s.good() && p>count*bufsize )
{
@@ -2040,19 +2040,30 @@
return( ret );
}
-int Volume::mount( const string& m )
+int Volume::mount( const string& m, bool ro )
{
SystemCmd cmd;
- y2milestone( "device:%s mp:%s", dev.c_str(), m.c_str() );
+ y2milestone( "device:%s mp:%s ro:%d", dev.c_str(), m.c_str(), ro );
string cmdline;
if( fs != SWAP )
{
string lmount = (!m.empty())?m:mp;
y2milestone( "device:%s mp:%s", dev.c_str(), lmount.c_str() );
string fsn = fs_names[fs];
- cmdline = "modprobe " + fsn;
- cmd.execute( cmdline );
+ switch( fs )
+ {
+ case NTFS:
+ fsn = "ntfs-3g";
+ break;
+ case FSUNKNOWN:
+ fsn = "auto";
+ break;
+ default:
+ cmdline = "modprobe " + fsn;
+ cmd.execute( cmdline );
+ break;
+ }
if( fs == VFAT )
{
cmdline = "modprobe nls_cp437";
@@ -2061,10 +2072,8 @@
cmd.execute( cmdline );
}
cmdline = "mount ";
- if( fs == NTFS )
+ if( ro )
cmdline += "-r ";
- else if( fs == FSUNKNOWN )
- fsn = "auto";
const char * ign_opt[] = { "defaults", "" };
const char * ign_beg[] = { "loop", "encryption=", "phash=",
"itercountk=" };
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-storage-2.15.18/libstorage/src/Volume.h new/yast2-storage-2.15.18/libstorage/src/Volume.h
--- old/yast2-storage-2.15.18/libstorage/src/Volume.h 2007-07-02 18:07:38.000000000 +0200
+++ new/yast2-storage-2.15.18/libstorage/src/Volume.h 2007-07-16 12:55:29.000000000 +0200
@@ -133,7 +133,7 @@
int prepareRemove();
int umount( const string& mp="" );
int crUnsetup( bool force=false );
- int mount( const string& mp="" );
+ int mount( const string& mp="", bool ro=false );
int canResize( unsigned long long newSizeK ) const;
int doMount();
int doFormat();
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-storage-2.15.18/Makefile.am new/yast2-storage-2.15.18/Makefile.am
--- old/yast2-storage-2.15.18/Makefile.am 2007-05-31 18:37:34.000000000 +0200
+++ new/yast2-storage-2.15.18/Makefile.am 2007-07-16 16:06:36.000000000 +0200
@@ -7,8 +7,7 @@
#
#where devtools are
-PREFIX := $(shell pkg-config --print-errors --variable=prefix yast2-devtools)
-Y2TOOL = $(PREFIX)/bin/y2tool
+Y2TOOL = $(Y2DEVTOOLS_PREFIX)/bin/y2tool
VERSION = $(shell cat $(srcdir)/VERSION)
RPMNAME = $(shell cat $(srcdir)/RPMNAME)
@@ -20,7 +19,7 @@
# do we do Makefile.am for devtools? It is a little special...
IS_DEVTOOLS = $(findstring yast2-devtools,$(RPMNAME))
-DEVTOOLS_DIR = $(if $(IS_DEVTOOLS),$(srcdir)/devtools,$(PREFIX)/share/YaST2/data/devtools)
+DEVTOOLS_DIR = $(if $(IS_DEVTOOLS),$(srcdir)/devtools,$(Y2DEVTOOLS_PREFIX)/share/YaST2/data/devtools)
ALL_PACKAGES = $(DEVTOOLS_DIR)/admin/all-packages
LEGALESE_DIR = $(if $(HAS_YAST_LICENSE),$(DEVTOOLS_DIR)/admin/copyright/yast,$(DEVTOOLS_DIR)/admin/copyright/gpl)
@@ -34,7 +33,7 @@
AUTOMAKE_OPTIONS = foreign dist-bzip2
# where devtools instal m4 snippets
# argh, executed literally
-#ACLOCAL_AMFLAGS = -I $(PREFIX)/share/aclocal
+#ACLOCAL_AMFLAGS = -I $(Y2DEVTOOLS_PREFIX)/share/aclocal
ACLOCAL_AMFLAGS = -I `if test -d ./devtools/admin; then echo ./devtools/admin; else pkg-config --print-errors --variable=datadir yast2-devtools; fi`/aclocal
Makefile.am.common: $(DEVTOOLS_DIR)/admin/Makefile.am.common
@@ -67,7 +66,7 @@
# because the prerequisite is made here (not anymore!)
# and we don't want any paths in y2autoconf
# info '(autoconf)config.status Invocation'
-$(RPMNAME).pc: $(RPMNAME).pc.in
+$(RPMNAME).pc: $(RPMNAME).pc.in config.status
./config.status --file=$@:$<
if CREATE_PKGCONFIG_NOARCH
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-storage-2.15.18/Makefile.am.common new/yast2-storage-2.15.18/Makefile.am.common
--- old/yast2-storage-2.15.18/Makefile.am.common 2007-05-31 18:37:34.000000000 +0200
+++ new/yast2-storage-2.15.18/Makefile.am.common 2007-07-16 16:06:36.000000000 +0200
@@ -29,7 +29,19 @@
dist-hook: check-syntax
+CHECK_SYNTAX = true
check-syntax: $(client_DATA) $(ycpchook)
- if test "$(client_DATA)"; then $(bindir)/ycpc -qE -M. -I. $(YCPCFLAGS) $(filter %.ycp,$^) || exit 1; fi
+ @if test "$(client_DATA)"; then \
+ if $(CHECK_SYNTAX); then \
+ TO_CHECK="$(filter %.ycp,$^)"; \
+ echo "Checking syntax of $${TO_CHECK}"; \
+ if ! $(YCPC) -qE -M. -I. $(YCPCFLAGS) $${TO_CHECK}; then \
+ echo "Failed. Disable by 'make ... CHECK_SYNTAX=false' at your own risk"; \
+ exit 1; \
+ fi; \
+ else \
+ echo "Syntax check disabled"; \
+ fi; \
+ fi
-include .dep
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-storage-2.15.18/missing new/yast2-storage-2.15.18/missing
--- old/yast2-storage-2.15.18/missing 2007-05-31 18:37:58.000000000 +0200
+++ new/yast2-storage-2.15.18/missing 2007-07-16 16:07:13.000000000 +0200
@@ -1,9 +1,9 @@
#! /bin/sh
# Common stub for a few missing GNU programs while installing.
-scriptversion=2005-06-08.21
+scriptversion=2006-05-10.23
-# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005
+# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006
# Free Software Foundation, Inc.
# Originally by Fran,cois Pinard , 1996.
@@ -33,6 +33,8 @@
fi
run=:
+sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
+sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
# In the cases where this matters, `missing' is being run in the
# srcdir already.
@@ -44,7 +46,7 @@
msg="missing on your system"
-case "$1" in
+case $1 in
--run)
# Try to run requested program, and just exit if it succeeds.
run=
@@ -77,6 +79,7 @@
aclocal touch file \`aclocal.m4'
autoconf touch file \`configure'
autoheader touch file \`config.h.in'
+ autom4te touch the output file, or create a stub one
automake touch all \`Makefile.in' files
bison create \`y.tab.[ch]', if possible, from existing .[ch]
flex create \`lex.yy.c', if possible, from existing .c
@@ -106,7 +109,7 @@
# Now exit if we have it, but it failed. Also exit now if we
# don't have it and --version was passed (most likely to detect
# the program).
-case "$1" in
+case $1 in
lex|yacc)
# Not GNU programs, they don't have --version.
;;
@@ -135,7 +138,7 @@
# If it does not exist, or fails to run (possibly an outdated version),
# try to emulate it.
-case "$1" in
+case $1 in
aclocal*)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
@@ -164,7 +167,7 @@
test -z "$files" && files="config.h"
touch_files=
for f in $files; do
- case "$f" in
+ case $f in
*:*) touch_files="$touch_files "`echo "$f" |
sed -e 's/^[^:]*://' -e 's/:.*//'`;;
*) touch_files="$touch_files $f.in";;
@@ -192,8 +195,8 @@
You can get \`$1' as part of \`Autoconf' from any GNU
archive site."
- file=`echo "$*" | sed -n 's/.*--output[ =]*\([^ ]*\).*/\1/p'`
- test -z "$file" && file=`echo "$*" | sed -n 's/.*-o[ ]*\([^ ]*\).*/\1/p'`
+ file=`echo "$*" | sed -n "$sed_output"`
+ test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
if test -f "$file"; then
touch $file
else
@@ -214,25 +217,25 @@
in order for those modifications to take effect. You can get
\`Bison' from any GNU archive site."
rm -f y.tab.c y.tab.h
- if [ $# -ne 1 ]; then
+ if test $# -ne 1; then
eval LASTARG="\${$#}"
- case "$LASTARG" in
+ case $LASTARG in
*.y)
SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
- if [ -f "$SRCFILE" ]; then
+ if test -f "$SRCFILE"; then
cp "$SRCFILE" y.tab.c
fi
SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
- if [ -f "$SRCFILE" ]; then
+ if test -f "$SRCFILE"; then
cp "$SRCFILE" y.tab.h
fi
;;
esac
fi
- if [ ! -f y.tab.h ]; then
+ if test ! -f y.tab.h; then
echo >y.tab.h
fi
- if [ ! -f y.tab.c ]; then
+ if test ! -f y.tab.c; then
echo 'main() { return 0; }' >y.tab.c
fi
;;
@@ -244,18 +247,18 @@
in order for those modifications to take effect. You can get
\`Flex' from any GNU archive site."
rm -f lex.yy.c
- if [ $# -ne 1 ]; then
+ if test $# -ne 1; then
eval LASTARG="\${$#}"
- case "$LASTARG" in
+ case $LASTARG in
*.l)
SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
- if [ -f "$SRCFILE" ]; then
+ if test -f "$SRCFILE"; then
cp "$SRCFILE" lex.yy.c
fi
;;
esac
fi
- if [ ! -f lex.yy.c ]; then
+ if test ! -f lex.yy.c; then
echo 'main() { return 0; }' >lex.yy.c
fi
;;
@@ -267,11 +270,9 @@
\`Help2man' package in order for those modifications to take
effect. You can get \`Help2man' from any GNU archive site."
- file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
- if test -z "$file"; then
- file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'`
- fi
- if [ -f "$file" ]; then
+ file=`echo "$*" | sed -n "$sed_output"`
+ test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
+ if test -f "$file"; then
touch $file
else
test -z "$file" || exec >$file
@@ -289,11 +290,17 @@
DU, IRIX). You might want to install the \`Texinfo' package or
the \`GNU make' package. Grab either from any GNU archive site."
# The file to touch is that specified with -o ...
- file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
+ file=`echo "$*" | sed -n "$sed_output"`
+ test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
if test -z "$file"; then
# ... or it is the one specified with @setfilename ...
infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
- file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $infile`
+ file=`sed -n '
+ /^@setfilename/{
+ s/.* \([^ ]*\) *$/\1/
+ p
+ q
+ }' $infile`
# ... or it is derived from the source name (dir/f.texi becomes f.info)
test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
fi
@@ -317,13 +324,13 @@
fi
firstarg="$1"
if shift; then
- case "$firstarg" in
+ case $firstarg in
*o*)
firstarg=`echo "$firstarg" | sed s/o//`
tar "$firstarg" "$@" && exit 0
;;
esac
- case "$firstarg" in
+ case $firstarg in
*h*)
firstarg=`echo "$firstarg" | sed s/h//`
tar "$firstarg" "$@" && exit 0
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-storage-2.15.18/pluglib-bindings.ami new/yast2-storage-2.15.18/pluglib-bindings.ami
--- old/yast2-storage-2.15.18/pluglib-bindings.ami 2007-05-31 18:37:34.000000000 +0200
+++ new/yast2-storage-2.15.18/pluglib-bindings.ami 2007-07-16 16:06:36.000000000 +0200
@@ -1,5 +1,5 @@
# -*- makefile -*- Automake include file
-# $Id: pluglib-bindings.ami 27327 2006-01-25 14:12:13Z mvidner $
+# $Id: pluglib-bindings.ami 35906 2007-02-06 15:26:47Z mvidner $
# Wraps a pluglib for use by YaST. Done by using Swig for Perl, adding
# type information. Compiles, installs.
@@ -43,7 +43,9 @@
if test -d $(PLUGLIB_MODULE); then \
rm -f $(PLUGLIB_MODULE)/*.pm; \
fi
- sabcmd $(PLGB_TYPEINFO_XSL) $< | perl $(PLGB_TYPEINFO_FILTER)
+ sabcmd $(PLGB_TYPEINFO_XSL) $< > $*.tpi
+ perl $(PLGB_TYPEINFO_FILTER) < $*.tpi
+ rm $*.tpi
# Install the Perl modules
PLGB_PMdir = $(moduledir)
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-storage-2.15.18/storage/src/include/custom_part_dialogs.ycp new/yast2-storage-2.15.18/storage/src/include/custom_part_dialogs.ycp
--- old/yast2-storage-2.15.18/storage/src/include/custom_part_dialogs.ycp 2007-06-14 17:20:53.000000000 +0200
+++ new/yast2-storage-2.15.18/storage/src/include/custom_part_dialogs.ycp 2007-07-04 16:40:28.000000000 +0200
@@ -16,7 +16,7 @@
*
*************************************************************
- $Id: custom_part_dialogs.ycp 38470 2007-06-14 15:20:53Z fehr $
+ $Id: custom_part_dialogs.ycp 39176 2007-07-04 14:40:27Z fehr $
*/
{
@@ -650,7 +650,8 @@
{
list no_mountby_type = [ `loop ];
list mountby_id_path_type = [ `primary, `logical ];
- symbol defmb = Storage::GetMountBy( new["device"]:"" );
+ symbol defmb = !Mode::config() ? Storage::GetMountBy( new["device"]:"" )
+ : `device;
y2milestone( "FstabOptions defmb %1", defmb );
UI::ChangeWidget( `id(`mt_group), `CurrentButton,
new["mountby"]:defmb );
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-storage-2.15.18/storage/src/include/do_proposal_flexible.ycp new/yast2-storage-2.15.18/storage/src/include/do_proposal_flexible.ycp
--- old/yast2-storage-2.15.18/storage/src/include/do_proposal_flexible.ycp 2007-06-26 10:58:49.000000000 +0200
+++ new/yast2-storage-2.15.18/storage/src/include/do_proposal_flexible.ycp 2007-07-03 16:52:34.000000000 +0200
@@ -14,7 +14,7 @@
*
*************************************************************
- $Id: do_proposal_flexible.ycp 39029 2007-06-26 08:58:49Z fehr $
+ $Id: do_proposal_flexible.ycp 39148 2007-07-03 14:52:34Z fehr $
*/
{
@@ -1661,7 +1661,8 @@
{
win = p["winfo"]:$[];
y2milestone( "try_resize_windows win=%1", win );
- if( win != nil && win["ok"]:false && p["size_k"]:0 > 1024*1024 )
+ if( win != nil && win["ok"]:false && p["size_k"]:0 > 1024*1024 &&
+ !win["efi"]:false )
{
p["winfo"] = win;
p["resize"] = true;
@@ -2558,7 +2559,7 @@
if( ret )
{
if( assert_cons_fs )
- ret = p["winfo","ok"]:false;
+ ret = p["winfo","ok"]:false && !p["winfo","efi"]:false;
else
ret = size(p["winfo"]:$[])>0;
}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-storage-2.15.18/storage/src/modules/FileSystems.ycp new/yast2-storage-2.15.18/storage/src/modules/FileSystems.ycp
--- old/yast2-storage-2.15.18/storage/src/modules/FileSystems.ycp 2007-06-14 16:48:36.000000000 +0200
+++ new/yast2-storage-2.15.18/storage/src/modules/FileSystems.ycp 2007-07-16 12:12:50.000000000 +0200
@@ -7,7 +7,7 @@
* These module contains the supported filesystems and their settings.
*
*
- * $Id: FileSystems.ycp 38463 2007-06-14 14:48:35Z fehr $
+ * $Id: FileSystems.ycp 39418 2007-07-16 10:12:50Z fehr $
*/
{
module "FileSystems";
@@ -1077,7 +1077,7 @@
}
else if( used_fs == `ntfs )
{
- ret = "ntfs";
+ ret = "ntfs-3g";
}
}
if( ret == "" ) ret = defaultv;
@@ -1394,10 +1394,6 @@
{
fst_default = fst_default + ",codepage=" + code;
}
- if( fsys == `ntfs )
- {
- fst_default = "ro," + fst_default;
- }
}
any dp = LibStorage::ContVolInfo::new("LibStorage::ContVolInfo");
string dev = part["device"]:"";
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-storage-2.15.18/storage/src/modules/Storage.ycp new/yast2-storage-2.15.18/storage/src/modules/Storage.ycp
--- old/yast2-storage-2.15.18/storage/src/modules/Storage.ycp 2007-07-02 18:09:32.000000000 +0200
+++ new/yast2-storage-2.15.18/storage/src/modules/Storage.ycp 2007-07-16 12:16:09.000000000 +0200
@@ -19,7 +19,7 @@
* wurde versucht "intelligent" zu gestallten und ist im einzelen bei den
* entspechenden Funktionen n�her erkl�rt.
*
- * $Id: Storage.ycp 39124 2007-07-02 16:09:31Z fehr $
+ * $Id: Storage.ycp 39419 2007-07-16 10:16:09Z fehr $
*/
{
@@ -743,11 +743,12 @@
integer resize_free = 0;
integer df_free = 0;
boolean win_disk = false;
+ boolean efi = false;
boolean r = false;
r = LibStorage::StorageInterface::getFreeInfo( sint, device, resize_free,
df_free, used, win_disk,
- used_fs==`ntfs );
+ efi, used_fs==`ntfs );
resize_free = resize_free * 1024; // Byte
df_free = df_free * 1024; // Byte
@@ -830,6 +831,7 @@
"df_free" : df_free,
"used":used,
"win_disk":win_disk,
+ "efi":efi,
"linux_size":linux_size,
"max_win_size":used + resize_free + add_free - min_linux_size,
"ntfs" : (used_fs == `ntfs),
@@ -3166,6 +3168,14 @@
return( ret );
}
+define boolean IsEfiPartition( map p )
+ {
+ map m = GetFreeSpace( p["device"]:"", 0, p["used_fs"]:`none, false );
+ boolean ret = m["efi"]:false;
+ y2milestone( "IsEfiPartition ret:%1", ret );
+ return( ret );
+ }
+
/**
* Search in the list partitions for windows partitions and add the key
* "mount" to the found windows partitions.
@@ -3198,7 +3208,8 @@
((partnum<=max_prim)==primary) &&
foreign_nr < 24 &&
Partitions::IsDosWinNtPartition(fsid) &&
- (!Arch::ia64() || partition["size_k"]:0 >= 1024*1024) &&
+ (!Arch::ia64() || (!IsEfiPartition(partition) &&
+ partition["size_k"]:0 >= 1024*1024)) &&
contains( [`vfat, `ntfs], partition["used_fs"]:`none ))
{
new_partition["fstopt"] =
@@ -3409,12 +3420,20 @@
if( target[k,"delete"]:false && haskey( tg, k ) )
{
if( target[k,"type"]:`CT_UNKNOWN==`CT_LVM )
+ {
DeleteLvmVg( target[k,"name"]:"" );
+ target[k,"delete"] = false;
+ }
else if( target[k,"type"]:`CT_UNKNOWN==`CT_EVMS )
+ {
DeleteEvmsCo( target[k,"name"]:"" );
+ target[k,"delete"] = false;
+ }
else if( target[k,"type"]:`CT_UNKNOWN==`CT_DMRAID )
+ {
DeleteDmraid( k );
- target[k,"delete"] = false;
+ target[k,"delete"] = false;
+ }
}
});
keys = maplist( string k, any e, target, ``(k));
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org