diff options
author | Richard Jones <rjones@redhat.com> | 2009-05-21 16:18:16 +0100 |
---|---|---|
committer | Richard Jones <rjones@redhat.com> | 2009-05-21 16:18:16 +0100 |
commit | 3e408f493496597dc026d20778837f421f05a9dd (patch) | |
tree | 5aee1850ae052c36ab56de764d4130789280c7a8 /java | |
parent | 0f81d0941a2705d49bc129f69924265fa60d9677 (diff) | |
download | libguestfs-3e408f493496597dc026d20778837f421f05a9dd.tar.gz libguestfs-3e408f493496597dc026d20778837f421f05a9dd.tar.xz libguestfs-3e408f493496597dc026d20778837f421f05a9dd.zip |
Generated code for e2fsck-f command.
Diffstat (limited to 'java')
-rw-r--r-- | java/com/redhat/et/libguestfs/GuestFS.java | 29 | ||||
-rw-r--r-- | java/com_redhat_et_libguestfs_GuestFS.c | 17 |
2 files changed, 46 insertions, 0 deletions
diff --git a/java/com/redhat/et/libguestfs/GuestFS.java b/java/com/redhat/et/libguestfs/GuestFS.java index f4cec79c..6e2304e6 100644 --- a/java/com/redhat/et/libguestfs/GuestFS.java +++ b/java/com/redhat/et/libguestfs/GuestFS.java @@ -2939,6 +2939,13 @@ public class GuestFS { * This resizes an ext2 or ext3 filesystem to match the * size of the underlying device. * + * *Note:* It is sometimes required that you run + * "g.e2fsck_f" on the "device" before calling this + * command. For unknown reasons "resize2fs" sometimes gives + * an error about this and sometimes not. In any case, it + * is always safe to call "g.e2fsck_f" before calling this + * function. + * * @throws LibGuestFSException */ public void resize2fs (String device) @@ -2992,4 +2999,26 @@ public class GuestFS { private native String[] _find (long g, String directory) throws LibGuestFSException; + /** + * check an ext2/ext3 filesystem + * + * This runs "e2fsck -p -f device", ie. runs the ext2/ext3 + * filesystem checker on "device", noninteractively ("-p"), + * even if the filesystem appears to be clean ("-f"). + * + * This command is only needed because of "g.resize2fs" + * (q.v.). Normally you should use "g.fsck". + * + * @throws LibGuestFSException + */ + public void e2fsck_f (String device) + throws LibGuestFSException + { + if (g == 0) + throw new LibGuestFSException ("e2fsck_f: handle is closed"); + _e2fsck_f (g, device); + } + private native void _e2fsck_f (long g, String device) + throws LibGuestFSException; + } diff --git a/java/com_redhat_et_libguestfs_GuestFS.c b/java/com_redhat_et_libguestfs_GuestFS.c index 1e7f9de5..dea916e9 100644 --- a/java/com_redhat_et_libguestfs_GuestFS.c +++ b/java/com_redhat_et_libguestfs_GuestFS.c @@ -2963,3 +2963,20 @@ Java_com_redhat_et_libguestfs_GuestFS__1find return jr; } +JNIEXPORT void JNICALL +Java_com_redhat_et_libguestfs_GuestFS__1e2fsck_1f + (JNIEnv *env, jobject obj, jlong jg, jstring jdevice) +{ + guestfs_h *g = (guestfs_h *) (long) jg; + int r; + const char *device; + + device = (*env)->GetStringUTFChars (env, jdevice, NULL); + r = guestfs_e2fsck_f (g, device); + (*env)->ReleaseStringUTFChars (env, jdevice, device); + if (r == -1) { + throw_exception (env, guestfs_last_error (g)); + return ; + } +} + |