1 /* libguestfs generated file
2 * WARNING: THIS FILE IS GENERATED BY 'src/generator.ml'.
3 * ANY CHANGES YOU MAKE TO THIS FILE WILL BE LOST.
5 * Copyright (C) 2009 Red Hat Inc.
7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Lesser General Public
9 * License as published by the Free Software Foundation; either
10 * version 2 of the License, or (at your option) any later version.
12 * This library is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Lesser General Public License for more details.
17 * You should have received a copy of the GNU Lesser General Public
18 * License along with this library; if not, write to the Free Software
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
26 #include "com_redhat_et_libguestfs_GuestFS.h"
29 /* Note that this function returns. The exception is not thrown
30 * until after the wrapper function returns.
33 throw_exception (JNIEnv *env, const char *msg)
36 cl = (*env)->FindClass (env,
37 "com/redhat/et/libguestfs/LibGuestFSException");
38 (*env)->ThrowNew (env, cl, msg);
41 JNIEXPORT jlong JNICALL
42 Java_com_redhat_et_libguestfs_GuestFS__1create
43 (JNIEnv *env, jobject obj)
47 g = guestfs_create ();
49 throw_exception (env, "GuestFS.create: failed to allocate handle");
52 guestfs_set_error_handler (g, NULL, NULL);
56 JNIEXPORT void JNICALL
57 Java_com_redhat_et_libguestfs_GuestFS__1close
58 (JNIEnv *env, jobject obj, jlong jg)
60 guestfs_h *g = (guestfs_h *) jg;
64 JNIEXPORT void JNICALL
65 Java_com_redhat_et_libguestfs__1launch
66 (JNIEnv *env, jobject obj, jlong jg)
68 guestfs_h *g = (guestfs_h *) jg;
71 r = guestfs_launch (g);
73 throw_exception (env, guestfs_last_error (g));
78 JNIEXPORT void JNICALL
79 Java_com_redhat_et_libguestfs__1wait_1ready
80 (JNIEnv *env, jobject obj, jlong jg)
82 guestfs_h *g = (guestfs_h *) jg;
85 r = guestfs_wait_ready (g);
87 throw_exception (env, guestfs_last_error (g));
92 JNIEXPORT void JNICALL
93 Java_com_redhat_et_libguestfs__1kill_1subprocess
94 (JNIEnv *env, jobject obj, jlong jg)
96 guestfs_h *g = (guestfs_h *) jg;
99 r = guestfs_kill_subprocess (g);
101 throw_exception (env, guestfs_last_error (g));
106 JNIEXPORT void JNICALL
107 Java_com_redhat_et_libguestfs__1add_1drive
108 (JNIEnv *env, jobject obj, jlong jg, jstring jfilename)
110 guestfs_h *g = (guestfs_h *) jg;
112 const char *filename;
114 filename = (*env)->GetStringUTFChars (env, jfilename, NULL);
115 r = guestfs_add_drive (g, filename);
116 (*env)->ReleaseStringUTFChars (env, jfilename, filename);
118 throw_exception (env, guestfs_last_error (g));
123 JNIEXPORT void JNICALL
124 Java_com_redhat_et_libguestfs__1add_1cdrom
125 (JNIEnv *env, jobject obj, jlong jg, jstring jfilename)
127 guestfs_h *g = (guestfs_h *) jg;
129 const char *filename;
131 filename = (*env)->GetStringUTFChars (env, jfilename, NULL);
132 r = guestfs_add_cdrom (g, filename);
133 (*env)->ReleaseStringUTFChars (env, jfilename, filename);
135 throw_exception (env, guestfs_last_error (g));
140 JNIEXPORT void JNICALL
141 Java_com_redhat_et_libguestfs__1config
142 (JNIEnv *env, jobject obj, jlong jg, jstring jqemuparam, jstring jqemuvalue)
144 guestfs_h *g = (guestfs_h *) jg;
146 const char *qemuparam;
147 const char *qemuvalue;
149 qemuparam = (*env)->GetStringUTFChars (env, jqemuparam, NULL);
150 qemuvalue = (*env)->GetStringUTFChars (env, jqemuvalue, NULL);
151 r = guestfs_config (g, qemuparam, qemuvalue);
152 (*env)->ReleaseStringUTFChars (env, jqemuparam, qemuparam);
153 (*env)->ReleaseStringUTFChars (env, jqemuvalue, qemuvalue);
155 throw_exception (env, guestfs_last_error (g));
160 JNIEXPORT void JNICALL
161 Java_com_redhat_et_libguestfs__1set_1path
162 (JNIEnv *env, jobject obj, jlong jg, jstring jpath)
164 guestfs_h *g = (guestfs_h *) jg;
168 path = (*env)->GetStringUTFChars (env, jpath, NULL);
169 r = guestfs_set_path (g, path);
170 (*env)->ReleaseStringUTFChars (env, jpath, path);
172 throw_exception (env, guestfs_last_error (g));
177 JNIEXPORT jstring JNICALL
178 Java_com_redhat_et_libguestfs__1get_1path
179 (JNIEnv *env, jobject obj, jlong jg)
181 guestfs_h *g = (guestfs_h *) jg;
184 r = guestfs_get_path (g);
186 throw_exception (env, guestfs_last_error (g));
189 return (*env)->NewStringUTF (env, r);
192 JNIEXPORT void JNICALL
193 Java_com_redhat_et_libguestfs__1set_1autosync
194 (JNIEnv *env, jobject obj, jlong jg, jboolean jautosync)
196 guestfs_h *g = (guestfs_h *) jg;
200 autosync = jautosync;
201 r = guestfs_set_autosync (g, autosync);
203 throw_exception (env, guestfs_last_error (g));
208 JNIEXPORT jboolean JNICALL
209 Java_com_redhat_et_libguestfs__1get_1autosync
210 (JNIEnv *env, jobject obj, jlong jg)
212 guestfs_h *g = (guestfs_h *) jg;
215 r = guestfs_get_autosync (g);
217 throw_exception (env, guestfs_last_error (g));
223 JNIEXPORT void JNICALL
224 Java_com_redhat_et_libguestfs__1set_1verbose
225 (JNIEnv *env, jobject obj, jlong jg, jboolean jverbose)
227 guestfs_h *g = (guestfs_h *) jg;
232 r = guestfs_set_verbose (g, verbose);
234 throw_exception (env, guestfs_last_error (g));
239 JNIEXPORT jboolean JNICALL
240 Java_com_redhat_et_libguestfs__1get_1verbose
241 (JNIEnv *env, jobject obj, jlong jg)
243 guestfs_h *g = (guestfs_h *) jg;
246 r = guestfs_get_verbose (g);
248 throw_exception (env, guestfs_last_error (g));
254 JNIEXPORT jboolean JNICALL
255 Java_com_redhat_et_libguestfs__1is_1ready
256 (JNIEnv *env, jobject obj, jlong jg)
258 guestfs_h *g = (guestfs_h *) jg;
261 r = guestfs_is_ready (g);
263 throw_exception (env, guestfs_last_error (g));
269 JNIEXPORT jboolean JNICALL
270 Java_com_redhat_et_libguestfs__1is_1config
271 (JNIEnv *env, jobject obj, jlong jg)
273 guestfs_h *g = (guestfs_h *) jg;
276 r = guestfs_is_config (g);
278 throw_exception (env, guestfs_last_error (g));
284 JNIEXPORT jboolean JNICALL
285 Java_com_redhat_et_libguestfs__1is_1launching
286 (JNIEnv *env, jobject obj, jlong jg)
288 guestfs_h *g = (guestfs_h *) jg;
291 r = guestfs_is_launching (g);
293 throw_exception (env, guestfs_last_error (g));
299 JNIEXPORT jboolean JNICALL
300 Java_com_redhat_et_libguestfs__1is_1busy
301 (JNIEnv *env, jobject obj, jlong jg)
303 guestfs_h *g = (guestfs_h *) jg;
306 r = guestfs_is_busy (g);
308 throw_exception (env, guestfs_last_error (g));
314 JNIEXPORT jint JNICALL
315 Java_com_redhat_et_libguestfs__1get_1state
316 (JNIEnv *env, jobject obj, jlong jg)
318 guestfs_h *g = (guestfs_h *) jg;
321 r = guestfs_get_state (g);
323 throw_exception (env, guestfs_last_error (g));
329 JNIEXPORT void JNICALL
330 Java_com_redhat_et_libguestfs__1set_1busy
331 (JNIEnv *env, jobject obj, jlong jg)
333 guestfs_h *g = (guestfs_h *) jg;
336 r = guestfs_set_busy (g);
338 throw_exception (env, guestfs_last_error (g));
343 JNIEXPORT void JNICALL
344 Java_com_redhat_et_libguestfs__1set_1ready
345 (JNIEnv *env, jobject obj, jlong jg)
347 guestfs_h *g = (guestfs_h *) jg;
350 r = guestfs_set_ready (g);
352 throw_exception (env, guestfs_last_error (g));
357 JNIEXPORT void JNICALL
358 Java_com_redhat_et_libguestfs__1mount
359 (JNIEnv *env, jobject obj, jlong jg, jstring jdevice, jstring jmountpoint)
361 guestfs_h *g = (guestfs_h *) jg;
364 const char *mountpoint;
366 device = (*env)->GetStringUTFChars (env, jdevice, NULL);
367 mountpoint = (*env)->GetStringUTFChars (env, jmountpoint, NULL);
368 r = guestfs_mount (g, device, mountpoint);
369 (*env)->ReleaseStringUTFChars (env, jdevice, device);
370 (*env)->ReleaseStringUTFChars (env, jmountpoint, mountpoint);
372 throw_exception (env, guestfs_last_error (g));
377 JNIEXPORT void JNICALL
378 Java_com_redhat_et_libguestfs__1sync
379 (JNIEnv *env, jobject obj, jlong jg)
381 guestfs_h *g = (guestfs_h *) jg;
384 r = guestfs_sync (g);
386 throw_exception (env, guestfs_last_error (g));
391 JNIEXPORT void JNICALL
392 Java_com_redhat_et_libguestfs__1touch
393 (JNIEnv *env, jobject obj, jlong jg, jstring jpath)
395 guestfs_h *g = (guestfs_h *) jg;
399 path = (*env)->GetStringUTFChars (env, jpath, NULL);
400 r = guestfs_touch (g, path);
401 (*env)->ReleaseStringUTFChars (env, jpath, path);
403 throw_exception (env, guestfs_last_error (g));
408 JNIEXPORT jstring JNICALL
409 Java_com_redhat_et_libguestfs__1cat
410 (JNIEnv *env, jobject obj, jlong jg, jstring jpath)
412 guestfs_h *g = (guestfs_h *) jg;
417 path = (*env)->GetStringUTFChars (env, jpath, NULL);
418 r = guestfs_cat (g, path);
419 (*env)->ReleaseStringUTFChars (env, jpath, path);
421 throw_exception (env, guestfs_last_error (g));
424 jr = (*env)->NewStringUTF (env, r);
429 JNIEXPORT jstring JNICALL
430 Java_com_redhat_et_libguestfs__1ll
431 (JNIEnv *env, jobject obj, jlong jg, jstring jdirectory)
433 guestfs_h *g = (guestfs_h *) jg;
436 const char *directory;
438 directory = (*env)->GetStringUTFChars (env, jdirectory, NULL);
439 r = guestfs_ll (g, directory);
440 (*env)->ReleaseStringUTFChars (env, jdirectory, directory);
442 throw_exception (env, guestfs_last_error (g));
445 jr = (*env)->NewStringUTF (env, r);
450 JNIEXPORT jobjectArray JNICALL
451 Java_com_redhat_et_libguestfs__1ls
452 (JNIEnv *env, jobject obj, jlong jg, jstring jdirectory)
454 guestfs_h *g = (guestfs_h *) jg;
460 const char *directory;
463 directory = (*env)->GetStringUTFChars (env, jdirectory, NULL);
464 r = guestfs_ls (g, directory);
465 (*env)->ReleaseStringUTFChars (env, jdirectory, directory);
467 throw_exception (env, guestfs_last_error (g));
470 for (r_len = 0; r[r_len] != NULL; ++r_len) ;
471 cl = (*env)->FindClass (env, "java/lang/String");
472 jstr = (*env)->NewStringUTF (env, "");
473 jr = (*env)->NewObjectArray (env, r_len, cl, jstr);
474 for (i = 0; i < r_len; ++i) {
475 jstr = (*env)->NewStringUTF (env, r[i]);
476 (*env)->SetObjectArrayElement (env, jr, i, jstr);
483 JNIEXPORT jobjectArray JNICALL
484 Java_com_redhat_et_libguestfs__1list_1devices
485 (JNIEnv *env, jobject obj, jlong jg)
487 guestfs_h *g = (guestfs_h *) jg;
495 r = guestfs_list_devices (g);
497 throw_exception (env, guestfs_last_error (g));
500 for (r_len = 0; r[r_len] != NULL; ++r_len) ;
501 cl = (*env)->FindClass (env, "java/lang/String");
502 jstr = (*env)->NewStringUTF (env, "");
503 jr = (*env)->NewObjectArray (env, r_len, cl, jstr);
504 for (i = 0; i < r_len; ++i) {
505 jstr = (*env)->NewStringUTF (env, r[i]);
506 (*env)->SetObjectArrayElement (env, jr, i, jstr);
513 JNIEXPORT jobjectArray JNICALL
514 Java_com_redhat_et_libguestfs__1list_1partitions
515 (JNIEnv *env, jobject obj, jlong jg)
517 guestfs_h *g = (guestfs_h *) jg;
525 r = guestfs_list_partitions (g);
527 throw_exception (env, guestfs_last_error (g));
530 for (r_len = 0; r[r_len] != NULL; ++r_len) ;
531 cl = (*env)->FindClass (env, "java/lang/String");
532 jstr = (*env)->NewStringUTF (env, "");
533 jr = (*env)->NewObjectArray (env, r_len, cl, jstr);
534 for (i = 0; i < r_len; ++i) {
535 jstr = (*env)->NewStringUTF (env, r[i]);
536 (*env)->SetObjectArrayElement (env, jr, i, jstr);
543 JNIEXPORT jobjectArray JNICALL
544 Java_com_redhat_et_libguestfs__1pvs
545 (JNIEnv *env, jobject obj, jlong jg)
547 guestfs_h *g = (guestfs_h *) jg;
557 throw_exception (env, guestfs_last_error (g));
560 for (r_len = 0; r[r_len] != NULL; ++r_len) ;
561 cl = (*env)->FindClass (env, "java/lang/String");
562 jstr = (*env)->NewStringUTF (env, "");
563 jr = (*env)->NewObjectArray (env, r_len, cl, jstr);
564 for (i = 0; i < r_len; ++i) {
565 jstr = (*env)->NewStringUTF (env, r[i]);
566 (*env)->SetObjectArrayElement (env, jr, i, jstr);
573 JNIEXPORT jobjectArray JNICALL
574 Java_com_redhat_et_libguestfs__1vgs
575 (JNIEnv *env, jobject obj, jlong jg)
577 guestfs_h *g = (guestfs_h *) jg;
587 throw_exception (env, guestfs_last_error (g));
590 for (r_len = 0; r[r_len] != NULL; ++r_len) ;
591 cl = (*env)->FindClass (env, "java/lang/String");
592 jstr = (*env)->NewStringUTF (env, "");
593 jr = (*env)->NewObjectArray (env, r_len, cl, jstr);
594 for (i = 0; i < r_len; ++i) {
595 jstr = (*env)->NewStringUTF (env, r[i]);
596 (*env)->SetObjectArrayElement (env, jr, i, jstr);
603 JNIEXPORT jobjectArray JNICALL
604 Java_com_redhat_et_libguestfs__1lvs
605 (JNIEnv *env, jobject obj, jlong jg)
607 guestfs_h *g = (guestfs_h *) jg;
617 throw_exception (env, guestfs_last_error (g));
620 for (r_len = 0; r[r_len] != NULL; ++r_len) ;
621 cl = (*env)->FindClass (env, "java/lang/String");
622 jstr = (*env)->NewStringUTF (env, "");
623 jr = (*env)->NewObjectArray (env, r_len, cl, jstr);
624 for (i = 0; i < r_len; ++i) {
625 jstr = (*env)->NewStringUTF (env, r[i]);
626 (*env)->SetObjectArrayElement (env, jr, i, jstr);
633 JNIEXPORT jobjectArray JNICALL
634 Java_com_redhat_et_libguestfs__1pvs_1full
635 (JNIEnv *env, jobject obj, jlong jg)
637 guestfs_h *g = (guestfs_h *) jg;
642 struct guestfs_lvm_pv_list *r;
645 r = guestfs_pvs_full (g);
647 throw_exception (env, guestfs_last_error (g));
650 cl = (*env)->FindClass (env, "com/redhat/et/libguestfs/PV");
651 jr = (*env)->NewObjectArray (env, r->len, cl, NULL);
652 for (i = 0; i < r->len; ++i) {
653 jfl = (*env)->AllocObject (env, cl);
654 fl = (*env)->GetFieldID (env, cl, "pv_name", "Ljava/lang/String;");
655 (*env)->SetObjectField (env, jfl, fl, (*env)->NewStringUTF (env, r->val[i].pv_name));
658 memcpy (s, r->val[i].pv_uuid, 32);
660 fl = (*env)->GetFieldID (env, cl, "pv_uuid", "Ljava/lang/String;");
661 (*env)->SetObjectField (env, jfl, fl, (*env)->NewStringUTF (env, s));
663 fl = (*env)->GetFieldID (env, cl, "pv_fmt", "Ljava/lang/String;");
664 (*env)->SetObjectField (env, jfl, fl, (*env)->NewStringUTF (env, r->val[i].pv_fmt));
665 fl = (*env)->GetFieldID (env, cl, "pv_size", "J");
666 (*env)->SetLongField (env, jfl, fl, r->val[i].pv_size);
667 fl = (*env)->GetFieldID (env, cl, "dev_size", "J");
668 (*env)->SetLongField (env, jfl, fl, r->val[i].dev_size);
669 fl = (*env)->GetFieldID (env, cl, "pv_free", "J");
670 (*env)->SetLongField (env, jfl, fl, r->val[i].pv_free);
671 fl = (*env)->GetFieldID (env, cl, "pv_used", "J");
672 (*env)->SetLongField (env, jfl, fl, r->val[i].pv_used);
673 fl = (*env)->GetFieldID (env, cl, "pv_attr", "Ljava/lang/String;");
674 (*env)->SetObjectField (env, jfl, fl, (*env)->NewStringUTF (env, r->val[i].pv_attr));
675 fl = (*env)->GetFieldID (env, cl, "pv_pe_count", "J");
676 (*env)->SetLongField (env, jfl, fl, r->val[i].pv_pe_count);
677 fl = (*env)->GetFieldID (env, cl, "pv_pe_alloc_count", "J");
678 (*env)->SetLongField (env, jfl, fl, r->val[i].pv_pe_alloc_count);
679 fl = (*env)->GetFieldID (env, cl, "pv_tags", "Ljava/lang/String;");
680 (*env)->SetObjectField (env, jfl, fl, (*env)->NewStringUTF (env, r->val[i].pv_tags));
681 fl = (*env)->GetFieldID (env, cl, "pe_start", "J");
682 (*env)->SetLongField (env, jfl, fl, r->val[i].pe_start);
683 fl = (*env)->GetFieldID (env, cl, "pv_mda_count", "J");
684 (*env)->SetLongField (env, jfl, fl, r->val[i].pv_mda_count);
685 fl = (*env)->GetFieldID (env, cl, "pv_mda_free", "J");
686 (*env)->SetLongField (env, jfl, fl, r->val[i].pv_mda_free);
687 (*env)->SetObjectArrayElement (env, jfl, i, jfl);
689 guestfs_free_lvm_pv_list (r);
693 JNIEXPORT jobjectArray JNICALL
694 Java_com_redhat_et_libguestfs__1vgs_1full
695 (JNIEnv *env, jobject obj, jlong jg)
697 guestfs_h *g = (guestfs_h *) jg;
702 struct guestfs_lvm_vg_list *r;
705 r = guestfs_vgs_full (g);
707 throw_exception (env, guestfs_last_error (g));
710 cl = (*env)->FindClass (env, "com/redhat/et/libguestfs/VG");
711 jr = (*env)->NewObjectArray (env, r->len, cl, NULL);
712 for (i = 0; i < r->len; ++i) {
713 jfl = (*env)->AllocObject (env, cl);
714 fl = (*env)->GetFieldID (env, cl, "vg_name", "Ljava/lang/String;");
715 (*env)->SetObjectField (env, jfl, fl, (*env)->NewStringUTF (env, r->val[i].vg_name));
718 memcpy (s, r->val[i].vg_uuid, 32);
720 fl = (*env)->GetFieldID (env, cl, "vg_uuid", "Ljava/lang/String;");
721 (*env)->SetObjectField (env, jfl, fl, (*env)->NewStringUTF (env, s));
723 fl = (*env)->GetFieldID (env, cl, "vg_fmt", "Ljava/lang/String;");
724 (*env)->SetObjectField (env, jfl, fl, (*env)->NewStringUTF (env, r->val[i].vg_fmt));
725 fl = (*env)->GetFieldID (env, cl, "vg_attr", "Ljava/lang/String;");
726 (*env)->SetObjectField (env, jfl, fl, (*env)->NewStringUTF (env, r->val[i].vg_attr));
727 fl = (*env)->GetFieldID (env, cl, "vg_size", "J");
728 (*env)->SetLongField (env, jfl, fl, r->val[i].vg_size);
729 fl = (*env)->GetFieldID (env, cl, "vg_free", "J");
730 (*env)->SetLongField (env, jfl, fl, r->val[i].vg_free);
731 fl = (*env)->GetFieldID (env, cl, "vg_sysid", "Ljava/lang/String;");
732 (*env)->SetObjectField (env, jfl, fl, (*env)->NewStringUTF (env, r->val[i].vg_sysid));
733 fl = (*env)->GetFieldID (env, cl, "vg_extent_size", "J");
734 (*env)->SetLongField (env, jfl, fl, r->val[i].vg_extent_size);
735 fl = (*env)->GetFieldID (env, cl, "vg_extent_count", "J");
736 (*env)->SetLongField (env, jfl, fl, r->val[i].vg_extent_count);
737 fl = (*env)->GetFieldID (env, cl, "vg_free_count", "J");
738 (*env)->SetLongField (env, jfl, fl, r->val[i].vg_free_count);
739 fl = (*env)->GetFieldID (env, cl, "max_lv", "J");
740 (*env)->SetLongField (env, jfl, fl, r->val[i].max_lv);
741 fl = (*env)->GetFieldID (env, cl, "max_pv", "J");
742 (*env)->SetLongField (env, jfl, fl, r->val[i].max_pv);
743 fl = (*env)->GetFieldID (env, cl, "pv_count", "J");
744 (*env)->SetLongField (env, jfl, fl, r->val[i].pv_count);
745 fl = (*env)->GetFieldID (env, cl, "lv_count", "J");
746 (*env)->SetLongField (env, jfl, fl, r->val[i].lv_count);
747 fl = (*env)->GetFieldID (env, cl, "snap_count", "J");
748 (*env)->SetLongField (env, jfl, fl, r->val[i].snap_count);
749 fl = (*env)->GetFieldID (env, cl, "vg_seqno", "J");
750 (*env)->SetLongField (env, jfl, fl, r->val[i].vg_seqno);
751 fl = (*env)->GetFieldID (env, cl, "vg_tags", "Ljava/lang/String;");
752 (*env)->SetObjectField (env, jfl, fl, (*env)->NewStringUTF (env, r->val[i].vg_tags));
753 fl = (*env)->GetFieldID (env, cl, "vg_mda_count", "J");
754 (*env)->SetLongField (env, jfl, fl, r->val[i].vg_mda_count);
755 fl = (*env)->GetFieldID (env, cl, "vg_mda_free", "J");
756 (*env)->SetLongField (env, jfl, fl, r->val[i].vg_mda_free);
757 (*env)->SetObjectArrayElement (env, jfl, i, jfl);
759 guestfs_free_lvm_vg_list (r);
763 JNIEXPORT jobjectArray JNICALL
764 Java_com_redhat_et_libguestfs__1lvs_1full
765 (JNIEnv *env, jobject obj, jlong jg)
767 guestfs_h *g = (guestfs_h *) jg;
772 struct guestfs_lvm_lv_list *r;
775 r = guestfs_lvs_full (g);
777 throw_exception (env, guestfs_last_error (g));
780 cl = (*env)->FindClass (env, "com/redhat/et/libguestfs/LV");
781 jr = (*env)->NewObjectArray (env, r->len, cl, NULL);
782 for (i = 0; i < r->len; ++i) {
783 jfl = (*env)->AllocObject (env, cl);
784 fl = (*env)->GetFieldID (env, cl, "lv_name", "Ljava/lang/String;");
785 (*env)->SetObjectField (env, jfl, fl, (*env)->NewStringUTF (env, r->val[i].lv_name));
788 memcpy (s, r->val[i].lv_uuid, 32);
790 fl = (*env)->GetFieldID (env, cl, "lv_uuid", "Ljava/lang/String;");
791 (*env)->SetObjectField (env, jfl, fl, (*env)->NewStringUTF (env, s));
793 fl = (*env)->GetFieldID (env, cl, "lv_attr", "Ljava/lang/String;");
794 (*env)->SetObjectField (env, jfl, fl, (*env)->NewStringUTF (env, r->val[i].lv_attr));
795 fl = (*env)->GetFieldID (env, cl, "lv_major", "J");
796 (*env)->SetLongField (env, jfl, fl, r->val[i].lv_major);
797 fl = (*env)->GetFieldID (env, cl, "lv_minor", "J");
798 (*env)->SetLongField (env, jfl, fl, r->val[i].lv_minor);
799 fl = (*env)->GetFieldID (env, cl, "lv_kernel_major", "J");
800 (*env)->SetLongField (env, jfl, fl, r->val[i].lv_kernel_major);
801 fl = (*env)->GetFieldID (env, cl, "lv_kernel_minor", "J");
802 (*env)->SetLongField (env, jfl, fl, r->val[i].lv_kernel_minor);
803 fl = (*env)->GetFieldID (env, cl, "lv_size", "J");
804 (*env)->SetLongField (env, jfl, fl, r->val[i].lv_size);
805 fl = (*env)->GetFieldID (env, cl, "seg_count", "J");
806 (*env)->SetLongField (env, jfl, fl, r->val[i].seg_count);
807 fl = (*env)->GetFieldID (env, cl, "origin", "Ljava/lang/String;");
808 (*env)->SetObjectField (env, jfl, fl, (*env)->NewStringUTF (env, r->val[i].origin));
809 fl = (*env)->GetFieldID (env, cl, "snap_percent", "F");
810 (*env)->SetFloatField (env, jfl, fl, r->val[i].snap_percent);
811 fl = (*env)->GetFieldID (env, cl, "copy_percent", "F");
812 (*env)->SetFloatField (env, jfl, fl, r->val[i].copy_percent);
813 fl = (*env)->GetFieldID (env, cl, "move_pv", "Ljava/lang/String;");
814 (*env)->SetObjectField (env, jfl, fl, (*env)->NewStringUTF (env, r->val[i].move_pv));
815 fl = (*env)->GetFieldID (env, cl, "lv_tags", "Ljava/lang/String;");
816 (*env)->SetObjectField (env, jfl, fl, (*env)->NewStringUTF (env, r->val[i].lv_tags));
817 fl = (*env)->GetFieldID (env, cl, "mirror_log", "Ljava/lang/String;");
818 (*env)->SetObjectField (env, jfl, fl, (*env)->NewStringUTF (env, r->val[i].mirror_log));
819 fl = (*env)->GetFieldID (env, cl, "modules", "Ljava/lang/String;");
820 (*env)->SetObjectField (env, jfl, fl, (*env)->NewStringUTF (env, r->val[i].modules));
821 (*env)->SetObjectArrayElement (env, jfl, i, jfl);
823 guestfs_free_lvm_lv_list (r);
827 JNIEXPORT jobjectArray JNICALL
828 Java_com_redhat_et_libguestfs__1read_1lines
829 (JNIEnv *env, jobject obj, jlong jg, jstring jpath)
831 guestfs_h *g = (guestfs_h *) jg;
840 path = (*env)->GetStringUTFChars (env, jpath, NULL);
841 r = guestfs_read_lines (g, path);
842 (*env)->ReleaseStringUTFChars (env, jpath, path);
844 throw_exception (env, guestfs_last_error (g));
847 for (r_len = 0; r[r_len] != NULL; ++r_len) ;
848 cl = (*env)->FindClass (env, "java/lang/String");
849 jstr = (*env)->NewStringUTF (env, "");
850 jr = (*env)->NewObjectArray (env, r_len, cl, jstr);
851 for (i = 0; i < r_len; ++i) {
852 jstr = (*env)->NewStringUTF (env, r[i]);
853 (*env)->SetObjectArrayElement (env, jr, i, jstr);
860 JNIEXPORT void JNICALL
861 Java_com_redhat_et_libguestfs__1aug_1init
862 (JNIEnv *env, jobject obj, jlong jg, jstring jroot, jint jflags)
864 guestfs_h *g = (guestfs_h *) jg;
869 root = (*env)->GetStringUTFChars (env, jroot, NULL);
871 r = guestfs_aug_init (g, root, flags);
872 (*env)->ReleaseStringUTFChars (env, jroot, root);
874 throw_exception (env, guestfs_last_error (g));
879 JNIEXPORT void JNICALL
880 Java_com_redhat_et_libguestfs__1aug_1close
881 (JNIEnv *env, jobject obj, jlong jg)
883 guestfs_h *g = (guestfs_h *) jg;
886 r = guestfs_aug_close (g);
888 throw_exception (env, guestfs_last_error (g));
893 JNIEXPORT jint JNICALL
894 Java_com_redhat_et_libguestfs__1aug_1defvar
895 (JNIEnv *env, jobject obj, jlong jg, jstring jname, jstring jexpr)
897 guestfs_h *g = (guestfs_h *) jg;
902 name = (*env)->GetStringUTFChars (env, jname, NULL);
903 expr = (*env)->GetStringUTFChars (env, jexpr, NULL);
904 r = guestfs_aug_defvar (g, name, expr);
905 (*env)->ReleaseStringUTFChars (env, jname, name);
906 (*env)->ReleaseStringUTFChars (env, jexpr, expr);
908 throw_exception (env, guestfs_last_error (g));
914 JNIEXPORT jobject JNICALL
915 Java_com_redhat_et_libguestfs__1aug_1defnode
916 (JNIEnv *env, jobject obj, jlong jg, jstring jname, jstring jexpr, jstring jval)
918 guestfs_h *g = (guestfs_h *) jg;
922 struct guestfs_int_bool *r;
927 name = (*env)->GetStringUTFChars (env, jname, NULL);
928 expr = (*env)->GetStringUTFChars (env, jexpr, NULL);
929 val = (*env)->GetStringUTFChars (env, jval, NULL);
930 r = guestfs_aug_defnode (g, name, expr, val);
931 (*env)->ReleaseStringUTFChars (env, jname, name);
932 (*env)->ReleaseStringUTFChars (env, jexpr, expr);
933 (*env)->ReleaseStringUTFChars (env, jval, val);
935 throw_exception (env, guestfs_last_error (g));
938 cl = (*env)->FindClass (env, "com/redhat/et/libguestfs/IntBool");
939 jr = (*env)->AllocObject (env, cl);
940 fl = (*env)->GetFieldID (env, cl, "i", "I");
941 (*env)->SetIntField (env, jr, fl, r->i);
942 fl = (*env)->GetFieldID (env, cl, "i", "Z");
943 (*env)->SetBooleanField (env, jr, fl, r->b);
944 guestfs_free_int_bool (r);
948 JNIEXPORT jstring JNICALL
949 Java_com_redhat_et_libguestfs__1aug_1get
950 (JNIEnv *env, jobject obj, jlong jg, jstring jpath)
952 guestfs_h *g = (guestfs_h *) jg;
957 path = (*env)->GetStringUTFChars (env, jpath, NULL);
958 r = guestfs_aug_get (g, path);
959 (*env)->ReleaseStringUTFChars (env, jpath, path);
961 throw_exception (env, guestfs_last_error (g));
964 jr = (*env)->NewStringUTF (env, r);
969 JNIEXPORT void JNICALL
970 Java_com_redhat_et_libguestfs__1aug_1set
971 (JNIEnv *env, jobject obj, jlong jg, jstring jpath, jstring jval)
973 guestfs_h *g = (guestfs_h *) jg;
978 path = (*env)->GetStringUTFChars (env, jpath, NULL);
979 val = (*env)->GetStringUTFChars (env, jval, NULL);
980 r = guestfs_aug_set (g, path, val);
981 (*env)->ReleaseStringUTFChars (env, jpath, path);
982 (*env)->ReleaseStringUTFChars (env, jval, val);
984 throw_exception (env, guestfs_last_error (g));
989 JNIEXPORT void JNICALL
990 Java_com_redhat_et_libguestfs__1aug_1insert
991 (JNIEnv *env, jobject obj, jlong jg, jstring jpath, jstring jlabel, jboolean jbefore)
993 guestfs_h *g = (guestfs_h *) jg;
999 path = (*env)->GetStringUTFChars (env, jpath, NULL);
1000 label = (*env)->GetStringUTFChars (env, jlabel, NULL);
1002 r = guestfs_aug_insert (g, path, label, before);
1003 (*env)->ReleaseStringUTFChars (env, jpath, path);
1004 (*env)->ReleaseStringUTFChars (env, jlabel, label);
1006 throw_exception (env, guestfs_last_error (g));
1011 JNIEXPORT jint JNICALL
1012 Java_com_redhat_et_libguestfs__1aug_1rm
1013 (JNIEnv *env, jobject obj, jlong jg, jstring jpath)
1015 guestfs_h *g = (guestfs_h *) jg;
1019 path = (*env)->GetStringUTFChars (env, jpath, NULL);
1020 r = guestfs_aug_rm (g, path);
1021 (*env)->ReleaseStringUTFChars (env, jpath, path);
1023 throw_exception (env, guestfs_last_error (g));
1029 JNIEXPORT void JNICALL
1030 Java_com_redhat_et_libguestfs__1aug_1mv
1031 (JNIEnv *env, jobject obj, jlong jg, jstring jsrc, jstring jdest)
1033 guestfs_h *g = (guestfs_h *) jg;
1038 src = (*env)->GetStringUTFChars (env, jsrc, NULL);
1039 dest = (*env)->GetStringUTFChars (env, jdest, NULL);
1040 r = guestfs_aug_mv (g, src, dest);
1041 (*env)->ReleaseStringUTFChars (env, jsrc, src);
1042 (*env)->ReleaseStringUTFChars (env, jdest, dest);
1044 throw_exception (env, guestfs_last_error (g));
1049 JNIEXPORT jobjectArray JNICALL
1050 Java_com_redhat_et_libguestfs__1aug_1match
1051 (JNIEnv *env, jobject obj, jlong jg, jstring jpath)
1053 guestfs_h *g = (guestfs_h *) jg;
1062 path = (*env)->GetStringUTFChars (env, jpath, NULL);
1063 r = guestfs_aug_match (g, path);
1064 (*env)->ReleaseStringUTFChars (env, jpath, path);
1066 throw_exception (env, guestfs_last_error (g));
1069 for (r_len = 0; r[r_len] != NULL; ++r_len) ;
1070 cl = (*env)->FindClass (env, "java/lang/String");
1071 jstr = (*env)->NewStringUTF (env, "");
1072 jr = (*env)->NewObjectArray (env, r_len, cl, jstr);
1073 for (i = 0; i < r_len; ++i) {
1074 jstr = (*env)->NewStringUTF (env, r[i]);
1075 (*env)->SetObjectArrayElement (env, jr, i, jstr);
1082 JNIEXPORT void JNICALL
1083 Java_com_redhat_et_libguestfs__1aug_1save
1084 (JNIEnv *env, jobject obj, jlong jg)
1086 guestfs_h *g = (guestfs_h *) jg;
1089 r = guestfs_aug_save (g);
1091 throw_exception (env, guestfs_last_error (g));
1096 JNIEXPORT void JNICALL
1097 Java_com_redhat_et_libguestfs__1aug_1load
1098 (JNIEnv *env, jobject obj, jlong jg)
1100 guestfs_h *g = (guestfs_h *) jg;
1103 r = guestfs_aug_load (g);
1105 throw_exception (env, guestfs_last_error (g));
1110 JNIEXPORT jobjectArray JNICALL
1111 Java_com_redhat_et_libguestfs__1aug_1ls
1112 (JNIEnv *env, jobject obj, jlong jg, jstring jpath)
1114 guestfs_h *g = (guestfs_h *) jg;
1123 path = (*env)->GetStringUTFChars (env, jpath, NULL);
1124 r = guestfs_aug_ls (g, path);
1125 (*env)->ReleaseStringUTFChars (env, jpath, path);
1127 throw_exception (env, guestfs_last_error (g));
1130 for (r_len = 0; r[r_len] != NULL; ++r_len) ;
1131 cl = (*env)->FindClass (env, "java/lang/String");
1132 jstr = (*env)->NewStringUTF (env, "");
1133 jr = (*env)->NewObjectArray (env, r_len, cl, jstr);
1134 for (i = 0; i < r_len; ++i) {
1135 jstr = (*env)->NewStringUTF (env, r[i]);
1136 (*env)->SetObjectArrayElement (env, jr, i, jstr);
1143 JNIEXPORT void JNICALL
1144 Java_com_redhat_et_libguestfs__1rm
1145 (JNIEnv *env, jobject obj, jlong jg, jstring jpath)
1147 guestfs_h *g = (guestfs_h *) jg;
1151 path = (*env)->GetStringUTFChars (env, jpath, NULL);
1152 r = guestfs_rm (g, path);
1153 (*env)->ReleaseStringUTFChars (env, jpath, path);
1155 throw_exception (env, guestfs_last_error (g));
1160 JNIEXPORT void JNICALL
1161 Java_com_redhat_et_libguestfs__1rmdir
1162 (JNIEnv *env, jobject obj, jlong jg, jstring jpath)
1164 guestfs_h *g = (guestfs_h *) jg;
1168 path = (*env)->GetStringUTFChars (env, jpath, NULL);
1169 r = guestfs_rmdir (g, path);
1170 (*env)->ReleaseStringUTFChars (env, jpath, path);
1172 throw_exception (env, guestfs_last_error (g));
1177 JNIEXPORT void JNICALL
1178 Java_com_redhat_et_libguestfs__1rm_1rf
1179 (JNIEnv *env, jobject obj, jlong jg, jstring jpath)
1181 guestfs_h *g = (guestfs_h *) jg;
1185 path = (*env)->GetStringUTFChars (env, jpath, NULL);
1186 r = guestfs_rm_rf (g, path);
1187 (*env)->ReleaseStringUTFChars (env, jpath, path);
1189 throw_exception (env, guestfs_last_error (g));
1194 JNIEXPORT void JNICALL
1195 Java_com_redhat_et_libguestfs__1mkdir
1196 (JNIEnv *env, jobject obj, jlong jg, jstring jpath)
1198 guestfs_h *g = (guestfs_h *) jg;
1202 path = (*env)->GetStringUTFChars (env, jpath, NULL);
1203 r = guestfs_mkdir (g, path);
1204 (*env)->ReleaseStringUTFChars (env, jpath, path);
1206 throw_exception (env, guestfs_last_error (g));
1211 JNIEXPORT void JNICALL
1212 Java_com_redhat_et_libguestfs__1mkdir_1p
1213 (JNIEnv *env, jobject obj, jlong jg, jstring jpath)
1215 guestfs_h *g = (guestfs_h *) jg;
1219 path = (*env)->GetStringUTFChars (env, jpath, NULL);
1220 r = guestfs_mkdir_p (g, path);
1221 (*env)->ReleaseStringUTFChars (env, jpath, path);
1223 throw_exception (env, guestfs_last_error (g));
1228 JNIEXPORT void JNICALL
1229 Java_com_redhat_et_libguestfs__1chmod
1230 (JNIEnv *env, jobject obj, jlong jg, jint jmode, jstring jpath)
1232 guestfs_h *g = (guestfs_h *) jg;
1238 path = (*env)->GetStringUTFChars (env, jpath, NULL);
1239 r = guestfs_chmod (g, mode, path);
1240 (*env)->ReleaseStringUTFChars (env, jpath, path);
1242 throw_exception (env, guestfs_last_error (g));
1247 JNIEXPORT void JNICALL
1248 Java_com_redhat_et_libguestfs__1chown
1249 (JNIEnv *env, jobject obj, jlong jg, jint jowner, jint jgroup, jstring jpath)
1251 guestfs_h *g = (guestfs_h *) jg;
1259 path = (*env)->GetStringUTFChars (env, jpath, NULL);
1260 r = guestfs_chown (g, owner, group, path);
1261 (*env)->ReleaseStringUTFChars (env, jpath, path);
1263 throw_exception (env, guestfs_last_error (g));
1268 JNIEXPORT jboolean JNICALL
1269 Java_com_redhat_et_libguestfs__1exists
1270 (JNIEnv *env, jobject obj, jlong jg, jstring jpath)
1272 guestfs_h *g = (guestfs_h *) jg;
1276 path = (*env)->GetStringUTFChars (env, jpath, NULL);
1277 r = guestfs_exists (g, path);
1278 (*env)->ReleaseStringUTFChars (env, jpath, path);
1280 throw_exception (env, guestfs_last_error (g));
1283 return (jboolean) r;
1286 JNIEXPORT jboolean JNICALL
1287 Java_com_redhat_et_libguestfs__1is_1file
1288 (JNIEnv *env, jobject obj, jlong jg, jstring jpath)
1290 guestfs_h *g = (guestfs_h *) jg;
1294 path = (*env)->GetStringUTFChars (env, jpath, NULL);
1295 r = guestfs_is_file (g, path);
1296 (*env)->ReleaseStringUTFChars (env, jpath, path);
1298 throw_exception (env, guestfs_last_error (g));
1301 return (jboolean) r;
1304 JNIEXPORT jboolean JNICALL
1305 Java_com_redhat_et_libguestfs__1is_1dir
1306 (JNIEnv *env, jobject obj, jlong jg, jstring jpath)
1308 guestfs_h *g = (guestfs_h *) jg;
1312 path = (*env)->GetStringUTFChars (env, jpath, NULL);
1313 r = guestfs_is_dir (g, path);
1314 (*env)->ReleaseStringUTFChars (env, jpath, path);
1316 throw_exception (env, guestfs_last_error (g));
1319 return (jboolean) r;
1322 JNIEXPORT void JNICALL
1323 Java_com_redhat_et_libguestfs__1pvcreate
1324 (JNIEnv *env, jobject obj, jlong jg, jstring jdevice)
1326 guestfs_h *g = (guestfs_h *) jg;
1330 device = (*env)->GetStringUTFChars (env, jdevice, NULL);
1331 r = guestfs_pvcreate (g, device);
1332 (*env)->ReleaseStringUTFChars (env, jdevice, device);
1334 throw_exception (env, guestfs_last_error (g));
1339 JNIEXPORT void JNICALL
1340 Java_com_redhat_et_libguestfs__1vgcreate
1341 (JNIEnv *env, jobject obj, jlong jg, jstring jvolgroup, jobjectArray jphysvols)
1343 guestfs_h *g = (guestfs_h *) jg;
1345 const char *volgroup;
1347 const char **physvols;
1350 volgroup = (*env)->GetStringUTFChars (env, jvolgroup, NULL);
1351 physvols_len = (*env)->GetArrayLength (env, jphysvols);
1352 physvols = malloc (sizeof (char *) * (physvols_len+1));
1353 for (i = 0; i < physvols_len; ++i) {
1354 jobject o = (*env)->GetObjectArrayElement (env, jphysvols, i);
1355 physvols[i] = (*env)->GetStringUTFChars (env, o, NULL);
1357 physvols[physvols_len] = NULL;
1358 r = guestfs_vgcreate (g, volgroup, physvols);
1359 (*env)->ReleaseStringUTFChars (env, jvolgroup, volgroup);
1360 for (i = 0; i < physvols_len; ++i) {
1361 jobject o = (*env)->GetObjectArrayElement (env, jphysvols, i);
1362 (*env)->ReleaseStringUTFChars (env, o, physvols[i]);
1366 throw_exception (env, guestfs_last_error (g));
1371 JNIEXPORT void JNICALL
1372 Java_com_redhat_et_libguestfs__1lvcreate
1373 (JNIEnv *env, jobject obj, jlong jg, jstring jlogvol, jstring jvolgroup, jint jmbytes)
1375 guestfs_h *g = (guestfs_h *) jg;
1378 const char *volgroup;
1381 logvol = (*env)->GetStringUTFChars (env, jlogvol, NULL);
1382 volgroup = (*env)->GetStringUTFChars (env, jvolgroup, NULL);
1384 r = guestfs_lvcreate (g, logvol, volgroup, mbytes);
1385 (*env)->ReleaseStringUTFChars (env, jlogvol, logvol);
1386 (*env)->ReleaseStringUTFChars (env, jvolgroup, volgroup);
1388 throw_exception (env, guestfs_last_error (g));
1393 JNIEXPORT void JNICALL
1394 Java_com_redhat_et_libguestfs__1mkfs
1395 (JNIEnv *env, jobject obj, jlong jg, jstring jfstype, jstring jdevice)
1397 guestfs_h *g = (guestfs_h *) jg;
1402 fstype = (*env)->GetStringUTFChars (env, jfstype, NULL);
1403 device = (*env)->GetStringUTFChars (env, jdevice, NULL);
1404 r = guestfs_mkfs (g, fstype, device);
1405 (*env)->ReleaseStringUTFChars (env, jfstype, fstype);
1406 (*env)->ReleaseStringUTFChars (env, jdevice, device);
1408 throw_exception (env, guestfs_last_error (g));
1413 JNIEXPORT void JNICALL
1414 Java_com_redhat_et_libguestfs__1sfdisk
1415 (JNIEnv *env, jobject obj, jlong jg, jstring jdevice, jint jcyls, jint jheads, jint jsectors, jobjectArray jlines)
1417 guestfs_h *g = (guestfs_h *) jg;
1427 device = (*env)->GetStringUTFChars (env, jdevice, NULL);
1431 lines_len = (*env)->GetArrayLength (env, jlines);
1432 lines = malloc (sizeof (char *) * (lines_len+1));
1433 for (i = 0; i < lines_len; ++i) {
1434 jobject o = (*env)->GetObjectArrayElement (env, jlines, i);
1435 lines[i] = (*env)->GetStringUTFChars (env, o, NULL);
1437 lines[lines_len] = NULL;
1438 r = guestfs_sfdisk (g, device, cyls, heads, sectors, lines);
1439 (*env)->ReleaseStringUTFChars (env, jdevice, device);
1440 for (i = 0; i < lines_len; ++i) {
1441 jobject o = (*env)->GetObjectArrayElement (env, jlines, i);
1442 (*env)->ReleaseStringUTFChars (env, o, lines[i]);
1446 throw_exception (env, guestfs_last_error (g));
1451 JNIEXPORT void JNICALL
1452 Java_com_redhat_et_libguestfs__1write_1file
1453 (JNIEnv *env, jobject obj, jlong jg, jstring jpath, jstring jcontent, jint jsize)
1455 guestfs_h *g = (guestfs_h *) jg;
1458 const char *content;
1461 path = (*env)->GetStringUTFChars (env, jpath, NULL);
1462 content = (*env)->GetStringUTFChars (env, jcontent, NULL);
1464 r = guestfs_write_file (g, path, content, size);
1465 (*env)->ReleaseStringUTFChars (env, jpath, path);
1466 (*env)->ReleaseStringUTFChars (env, jcontent, content);
1468 throw_exception (env, guestfs_last_error (g));
1473 JNIEXPORT void JNICALL
1474 Java_com_redhat_et_libguestfs__1umount
1475 (JNIEnv *env, jobject obj, jlong jg, jstring jpathordevice)
1477 guestfs_h *g = (guestfs_h *) jg;
1479 const char *pathordevice;
1481 pathordevice = (*env)->GetStringUTFChars (env, jpathordevice, NULL);
1482 r = guestfs_umount (g, pathordevice);
1483 (*env)->ReleaseStringUTFChars (env, jpathordevice, pathordevice);
1485 throw_exception (env, guestfs_last_error (g));
1490 JNIEXPORT jobjectArray JNICALL
1491 Java_com_redhat_et_libguestfs__1mounts
1492 (JNIEnv *env, jobject obj, jlong jg)
1494 guestfs_h *g = (guestfs_h *) jg;
1502 r = guestfs_mounts (g);
1504 throw_exception (env, guestfs_last_error (g));
1507 for (r_len = 0; r[r_len] != NULL; ++r_len) ;
1508 cl = (*env)->FindClass (env, "java/lang/String");
1509 jstr = (*env)->NewStringUTF (env, "");
1510 jr = (*env)->NewObjectArray (env, r_len, cl, jstr);
1511 for (i = 0; i < r_len; ++i) {
1512 jstr = (*env)->NewStringUTF (env, r[i]);
1513 (*env)->SetObjectArrayElement (env, jr, i, jstr);
1520 JNIEXPORT void JNICALL
1521 Java_com_redhat_et_libguestfs__1umount_1all
1522 (JNIEnv *env, jobject obj, jlong jg)
1524 guestfs_h *g = (guestfs_h *) jg;
1527 r = guestfs_umount_all (g);
1529 throw_exception (env, guestfs_last_error (g));
1534 JNIEXPORT void JNICALL
1535 Java_com_redhat_et_libguestfs__1lvm_1remove_1all
1536 (JNIEnv *env, jobject obj, jlong jg)
1538 guestfs_h *g = (guestfs_h *) jg;
1541 r = guestfs_lvm_remove_all (g);
1543 throw_exception (env, guestfs_last_error (g));
1548 JNIEXPORT jstring JNICALL
1549 Java_com_redhat_et_libguestfs__1file
1550 (JNIEnv *env, jobject obj, jlong jg, jstring jpath)
1552 guestfs_h *g = (guestfs_h *) jg;
1557 path = (*env)->GetStringUTFChars (env, jpath, NULL);
1558 r = guestfs_file (g, path);
1559 (*env)->ReleaseStringUTFChars (env, jpath, path);
1561 throw_exception (env, guestfs_last_error (g));
1564 jr = (*env)->NewStringUTF (env, r);
1569 JNIEXPORT jstring JNICALL
1570 Java_com_redhat_et_libguestfs__1command
1571 (JNIEnv *env, jobject obj, jlong jg, jobjectArray jarguments)
1573 guestfs_h *g = (guestfs_h *) jg;
1577 const char **arguments;
1580 arguments_len = (*env)->GetArrayLength (env, jarguments);
1581 arguments = malloc (sizeof (char *) * (arguments_len+1));
1582 for (i = 0; i < arguments_len; ++i) {
1583 jobject o = (*env)->GetObjectArrayElement (env, jarguments, i);
1584 arguments[i] = (*env)->GetStringUTFChars (env, o, NULL);
1586 arguments[arguments_len] = NULL;
1587 r = guestfs_command (g, arguments);
1588 for (i = 0; i < arguments_len; ++i) {
1589 jobject o = (*env)->GetObjectArrayElement (env, jarguments, i);
1590 (*env)->ReleaseStringUTFChars (env, o, arguments[i]);
1594 throw_exception (env, guestfs_last_error (g));
1597 jr = (*env)->NewStringUTF (env, r);
1602 JNIEXPORT jobjectArray JNICALL
1603 Java_com_redhat_et_libguestfs__1command_1lines
1604 (JNIEnv *env, jobject obj, jlong jg, jobjectArray jarguments)
1606 guestfs_h *g = (guestfs_h *) jg;
1613 const char **arguments;
1616 arguments_len = (*env)->GetArrayLength (env, jarguments);
1617 arguments = malloc (sizeof (char *) * (arguments_len+1));
1618 for (i = 0; i < arguments_len; ++i) {
1619 jobject o = (*env)->GetObjectArrayElement (env, jarguments, i);
1620 arguments[i] = (*env)->GetStringUTFChars (env, o, NULL);
1622 arguments[arguments_len] = NULL;
1623 r = guestfs_command_lines (g, arguments);
1624 for (i = 0; i < arguments_len; ++i) {
1625 jobject o = (*env)->GetObjectArrayElement (env, jarguments, i);
1626 (*env)->ReleaseStringUTFChars (env, o, arguments[i]);
1630 throw_exception (env, guestfs_last_error (g));
1633 for (r_len = 0; r[r_len] != NULL; ++r_len) ;
1634 cl = (*env)->FindClass (env, "java/lang/String");
1635 jstr = (*env)->NewStringUTF (env, "");
1636 jr = (*env)->NewObjectArray (env, r_len, cl, jstr);
1637 for (i = 0; i < r_len; ++i) {
1638 jstr = (*env)->NewStringUTF (env, r[i]);
1639 (*env)->SetObjectArrayElement (env, jr, i, jstr);
1646 JNIEXPORT jobject JNICALL
1647 Java_com_redhat_et_libguestfs__1stat
1648 (JNIEnv *env, jobject obj, jlong jg, jstring jpath)
1650 guestfs_h *g = (guestfs_h *) jg;
1654 struct guestfs_stat *r;
1657 path = (*env)->GetStringUTFChars (env, jpath, NULL);
1658 r = guestfs_stat (g, path);
1659 (*env)->ReleaseStringUTFChars (env, jpath, path);
1661 throw_exception (env, guestfs_last_error (g));
1664 cl = (*env)->FindClass (env, "com/redhat/et/libguestfs/Stat");
1665 jr = (*env)->AllocObject (env, cl);
1666 fl = (*env)->GetFieldID (env, cl, "dev", "J");
1667 (*env)->SetLongField (env, jr, fl, r->dev);
1668 fl = (*env)->GetFieldID (env, cl, "ino", "J");
1669 (*env)->SetLongField (env, jr, fl, r->ino);
1670 fl = (*env)->GetFieldID (env, cl, "mode", "J");
1671 (*env)->SetLongField (env, jr, fl, r->mode);
1672 fl = (*env)->GetFieldID (env, cl, "nlink", "J");
1673 (*env)->SetLongField (env, jr, fl, r->nlink);
1674 fl = (*env)->GetFieldID (env, cl, "uid", "J");
1675 (*env)->SetLongField (env, jr, fl, r->uid);
1676 fl = (*env)->GetFieldID (env, cl, "gid", "J");
1677 (*env)->SetLongField (env, jr, fl, r->gid);
1678 fl = (*env)->GetFieldID (env, cl, "rdev", "J");
1679 (*env)->SetLongField (env, jr, fl, r->rdev);
1680 fl = (*env)->GetFieldID (env, cl, "size", "J");
1681 (*env)->SetLongField (env, jr, fl, r->size);
1682 fl = (*env)->GetFieldID (env, cl, "blksize", "J");
1683 (*env)->SetLongField (env, jr, fl, r->blksize);
1684 fl = (*env)->GetFieldID (env, cl, "blocks", "J");
1685 (*env)->SetLongField (env, jr, fl, r->blocks);
1686 fl = (*env)->GetFieldID (env, cl, "atime", "J");
1687 (*env)->SetLongField (env, jr, fl, r->atime);
1688 fl = (*env)->GetFieldID (env, cl, "mtime", "J");
1689 (*env)->SetLongField (env, jr, fl, r->mtime);
1690 fl = (*env)->GetFieldID (env, cl, "ctime", "J");
1691 (*env)->SetLongField (env, jr, fl, r->ctime);
1696 JNIEXPORT jobject JNICALL
1697 Java_com_redhat_et_libguestfs__1lstat
1698 (JNIEnv *env, jobject obj, jlong jg, jstring jpath)
1700 guestfs_h *g = (guestfs_h *) jg;
1704 struct guestfs_stat *r;
1707 path = (*env)->GetStringUTFChars (env, jpath, NULL);
1708 r = guestfs_lstat (g, path);
1709 (*env)->ReleaseStringUTFChars (env, jpath, path);
1711 throw_exception (env, guestfs_last_error (g));
1714 cl = (*env)->FindClass (env, "com/redhat/et/libguestfs/Stat");
1715 jr = (*env)->AllocObject (env, cl);
1716 fl = (*env)->GetFieldID (env, cl, "dev", "J");
1717 (*env)->SetLongField (env, jr, fl, r->dev);
1718 fl = (*env)->GetFieldID (env, cl, "ino", "J");
1719 (*env)->SetLongField (env, jr, fl, r->ino);
1720 fl = (*env)->GetFieldID (env, cl, "mode", "J");
1721 (*env)->SetLongField (env, jr, fl, r->mode);
1722 fl = (*env)->GetFieldID (env, cl, "nlink", "J");
1723 (*env)->SetLongField (env, jr, fl, r->nlink);
1724 fl = (*env)->GetFieldID (env, cl, "uid", "J");
1725 (*env)->SetLongField (env, jr, fl, r->uid);
1726 fl = (*env)->GetFieldID (env, cl, "gid", "J");
1727 (*env)->SetLongField (env, jr, fl, r->gid);
1728 fl = (*env)->GetFieldID (env, cl, "rdev", "J");
1729 (*env)->SetLongField (env, jr, fl, r->rdev);
1730 fl = (*env)->GetFieldID (env, cl, "size", "J");
1731 (*env)->SetLongField (env, jr, fl, r->size);
1732 fl = (*env)->GetFieldID (env, cl, "blksize", "J");
1733 (*env)->SetLongField (env, jr, fl, r->blksize);
1734 fl = (*env)->GetFieldID (env, cl, "blocks", "J");
1735 (*env)->SetLongField (env, jr, fl, r->blocks);
1736 fl = (*env)->GetFieldID (env, cl, "atime", "J");
1737 (*env)->SetLongField (env, jr, fl, r->atime);
1738 fl = (*env)->GetFieldID (env, cl, "mtime", "J");
1739 (*env)->SetLongField (env, jr, fl, r->mtime);
1740 fl = (*env)->GetFieldID (env, cl, "ctime", "J");
1741 (*env)->SetLongField (env, jr, fl, r->ctime);
1746 JNIEXPORT jobject JNICALL
1747 Java_com_redhat_et_libguestfs__1statvfs
1748 (JNIEnv *env, jobject obj, jlong jg, jstring jpath)
1750 guestfs_h *g = (guestfs_h *) jg;
1754 struct guestfs_statvfs *r;
1757 path = (*env)->GetStringUTFChars (env, jpath, NULL);
1758 r = guestfs_statvfs (g, path);
1759 (*env)->ReleaseStringUTFChars (env, jpath, path);
1761 throw_exception (env, guestfs_last_error (g));
1764 cl = (*env)->FindClass (env, "com/redhat/et/libguestfs/StatVFS");
1765 jr = (*env)->AllocObject (env, cl);
1766 fl = (*env)->GetFieldID (env, cl, "bsize", "J");
1767 (*env)->SetLongField (env, jr, fl, r->bsize);
1768 fl = (*env)->GetFieldID (env, cl, "frsize", "J");
1769 (*env)->SetLongField (env, jr, fl, r->frsize);
1770 fl = (*env)->GetFieldID (env, cl, "blocks", "J");
1771 (*env)->SetLongField (env, jr, fl, r->blocks);
1772 fl = (*env)->GetFieldID (env, cl, "bfree", "J");
1773 (*env)->SetLongField (env, jr, fl, r->bfree);
1774 fl = (*env)->GetFieldID (env, cl, "bavail", "J");
1775 (*env)->SetLongField (env, jr, fl, r->bavail);
1776 fl = (*env)->GetFieldID (env, cl, "files", "J");
1777 (*env)->SetLongField (env, jr, fl, r->files);
1778 fl = (*env)->GetFieldID (env, cl, "ffree", "J");
1779 (*env)->SetLongField (env, jr, fl, r->ffree);
1780 fl = (*env)->GetFieldID (env, cl, "favail", "J");
1781 (*env)->SetLongField (env, jr, fl, r->favail);
1782 fl = (*env)->GetFieldID (env, cl, "fsid", "J");
1783 (*env)->SetLongField (env, jr, fl, r->fsid);
1784 fl = (*env)->GetFieldID (env, cl, "flag", "J");
1785 (*env)->SetLongField (env, jr, fl, r->flag);
1786 fl = (*env)->GetFieldID (env, cl, "namemax", "J");
1787 (*env)->SetLongField (env, jr, fl, r->namemax);
1792 JNIEXPORT jobject JNICALL
1793 Java_com_redhat_et_libguestfs__1tune2fs_1l
1794 (JNIEnv *env, jobject obj, jlong jg, jstring jdevice)
1796 guestfs_h *g = (guestfs_h *) jg;
1800 device = (*env)->GetStringUTFChars (env, jdevice, NULL);
1801 r = guestfs_tune2fs_l (g, device);
1802 (*env)->ReleaseStringUTFChars (env, jdevice, device);
1804 throw_exception (env, guestfs_last_error (g));
1807 throw_exception (env, "tune2fs_l: internal error: please let us know how to make a Java HashMap from JNI bindings!");
1811 JNIEXPORT void JNICALL
1812 Java_com_redhat_et_libguestfs__1blockdev_1setro
1813 (JNIEnv *env, jobject obj, jlong jg, jstring jdevice)
1815 guestfs_h *g = (guestfs_h *) jg;
1819 device = (*env)->GetStringUTFChars (env, jdevice, NULL);
1820 r = guestfs_blockdev_setro (g, device);
1821 (*env)->ReleaseStringUTFChars (env, jdevice, device);
1823 throw_exception (env, guestfs_last_error (g));
1828 JNIEXPORT void JNICALL
1829 Java_com_redhat_et_libguestfs__1blockdev_1setrw
1830 (JNIEnv *env, jobject obj, jlong jg, jstring jdevice)
1832 guestfs_h *g = (guestfs_h *) jg;
1836 device = (*env)->GetStringUTFChars (env, jdevice, NULL);
1837 r = guestfs_blockdev_setrw (g, device);
1838 (*env)->ReleaseStringUTFChars (env, jdevice, device);
1840 throw_exception (env, guestfs_last_error (g));
1845 JNIEXPORT jboolean JNICALL
1846 Java_com_redhat_et_libguestfs__1blockdev_1getro
1847 (JNIEnv *env, jobject obj, jlong jg, jstring jdevice)
1849 guestfs_h *g = (guestfs_h *) jg;
1853 device = (*env)->GetStringUTFChars (env, jdevice, NULL);
1854 r = guestfs_blockdev_getro (g, device);
1855 (*env)->ReleaseStringUTFChars (env, jdevice, device);
1857 throw_exception (env, guestfs_last_error (g));
1860 return (jboolean) r;
1863 JNIEXPORT jint JNICALL
1864 Java_com_redhat_et_libguestfs__1blockdev_1getss
1865 (JNIEnv *env, jobject obj, jlong jg, jstring jdevice)
1867 guestfs_h *g = (guestfs_h *) jg;
1871 device = (*env)->GetStringUTFChars (env, jdevice, NULL);
1872 r = guestfs_blockdev_getss (g, device);
1873 (*env)->ReleaseStringUTFChars (env, jdevice, device);
1875 throw_exception (env, guestfs_last_error (g));
1881 JNIEXPORT jint JNICALL
1882 Java_com_redhat_et_libguestfs__1blockdev_1getbsz
1883 (JNIEnv *env, jobject obj, jlong jg, jstring jdevice)
1885 guestfs_h *g = (guestfs_h *) jg;
1889 device = (*env)->GetStringUTFChars (env, jdevice, NULL);
1890 r = guestfs_blockdev_getbsz (g, device);
1891 (*env)->ReleaseStringUTFChars (env, jdevice, device);
1893 throw_exception (env, guestfs_last_error (g));
1899 JNIEXPORT void JNICALL
1900 Java_com_redhat_et_libguestfs__1blockdev_1setbsz
1901 (JNIEnv *env, jobject obj, jlong jg, jstring jdevice, jint jblocksize)
1903 guestfs_h *g = (guestfs_h *) jg;
1908 device = (*env)->GetStringUTFChars (env, jdevice, NULL);
1909 blocksize = jblocksize;
1910 r = guestfs_blockdev_setbsz (g, device, blocksize);
1911 (*env)->ReleaseStringUTFChars (env, jdevice, device);
1913 throw_exception (env, guestfs_last_error (g));
1918 JNIEXPORT jlong JNICALL
1919 Java_com_redhat_et_libguestfs__1blockdev_1getsz
1920 (JNIEnv *env, jobject obj, jlong jg, jstring jdevice)
1922 guestfs_h *g = (guestfs_h *) jg;
1926 device = (*env)->GetStringUTFChars (env, jdevice, NULL);
1927 r = guestfs_blockdev_getsz (g, device);
1928 (*env)->ReleaseStringUTFChars (env, jdevice, device);
1930 throw_exception (env, guestfs_last_error (g));
1936 JNIEXPORT jlong JNICALL
1937 Java_com_redhat_et_libguestfs__1blockdev_1getsize64
1938 (JNIEnv *env, jobject obj, jlong jg, jstring jdevice)
1940 guestfs_h *g = (guestfs_h *) jg;
1944 device = (*env)->GetStringUTFChars (env, jdevice, NULL);
1945 r = guestfs_blockdev_getsize64 (g, device);
1946 (*env)->ReleaseStringUTFChars (env, jdevice, device);
1948 throw_exception (env, guestfs_last_error (g));
1954 JNIEXPORT void JNICALL
1955 Java_com_redhat_et_libguestfs__1blockdev_1flushbufs
1956 (JNIEnv *env, jobject obj, jlong jg, jstring jdevice)
1958 guestfs_h *g = (guestfs_h *) jg;
1962 device = (*env)->GetStringUTFChars (env, jdevice, NULL);
1963 r = guestfs_blockdev_flushbufs (g, device);
1964 (*env)->ReleaseStringUTFChars (env, jdevice, device);
1966 throw_exception (env, guestfs_last_error (g));
1971 JNIEXPORT void JNICALL
1972 Java_com_redhat_et_libguestfs__1blockdev_1rereadpt
1973 (JNIEnv *env, jobject obj, jlong jg, jstring jdevice)
1975 guestfs_h *g = (guestfs_h *) jg;
1979 device = (*env)->GetStringUTFChars (env, jdevice, NULL);
1980 r = guestfs_blockdev_rereadpt (g, device);
1981 (*env)->ReleaseStringUTFChars (env, jdevice, device);
1983 throw_exception (env, guestfs_last_error (g));
1988 JNIEXPORT void JNICALL
1989 Java_com_redhat_et_libguestfs__1upload
1990 (JNIEnv *env, jobject obj, jlong jg, jstring jfilename, jstring jremotefilename)
1992 guestfs_h *g = (guestfs_h *) jg;
1994 const char *filename;
1995 const char *remotefilename;
1997 filename = (*env)->GetStringUTFChars (env, jfilename, NULL);
1998 remotefilename = (*env)->GetStringUTFChars (env, jremotefilename, NULL);
1999 r = guestfs_upload (g, filename, remotefilename);
2000 (*env)->ReleaseStringUTFChars (env, jfilename, filename);
2001 (*env)->ReleaseStringUTFChars (env, jremotefilename, remotefilename);
2003 throw_exception (env, guestfs_last_error (g));
2008 JNIEXPORT void JNICALL
2009 Java_com_redhat_et_libguestfs__1download
2010 (JNIEnv *env, jobject obj, jlong jg, jstring jremotefilename, jstring jfilename)
2012 guestfs_h *g = (guestfs_h *) jg;
2014 const char *remotefilename;
2015 const char *filename;
2017 remotefilename = (*env)->GetStringUTFChars (env, jremotefilename, NULL);
2018 filename = (*env)->GetStringUTFChars (env, jfilename, NULL);
2019 r = guestfs_download (g, remotefilename, filename);
2020 (*env)->ReleaseStringUTFChars (env, jremotefilename, remotefilename);
2021 (*env)->ReleaseStringUTFChars (env, jfilename, filename);
2023 throw_exception (env, guestfs_last_error (g));
2028 JNIEXPORT jstring JNICALL
2029 Java_com_redhat_et_libguestfs__1checksum
2030 (JNIEnv *env, jobject obj, jlong jg, jstring jcsumtype, jstring jpath)
2032 guestfs_h *g = (guestfs_h *) jg;
2035 const char *csumtype;
2038 csumtype = (*env)->GetStringUTFChars (env, jcsumtype, NULL);
2039 path = (*env)->GetStringUTFChars (env, jpath, NULL);
2040 r = guestfs_checksum (g, csumtype, path);
2041 (*env)->ReleaseStringUTFChars (env, jcsumtype, csumtype);
2042 (*env)->ReleaseStringUTFChars (env, jpath, path);
2044 throw_exception (env, guestfs_last_error (g));
2047 jr = (*env)->NewStringUTF (env, r);
2052 JNIEXPORT void JNICALL
2053 Java_com_redhat_et_libguestfs__1tar_1in
2054 (JNIEnv *env, jobject obj, jlong jg, jstring jtarfile, jstring jdirectory)
2056 guestfs_h *g = (guestfs_h *) jg;
2058 const char *tarfile;
2059 const char *directory;
2061 tarfile = (*env)->GetStringUTFChars (env, jtarfile, NULL);
2062 directory = (*env)->GetStringUTFChars (env, jdirectory, NULL);
2063 r = guestfs_tar_in (g, tarfile, directory);
2064 (*env)->ReleaseStringUTFChars (env, jtarfile, tarfile);
2065 (*env)->ReleaseStringUTFChars (env, jdirectory, directory);
2067 throw_exception (env, guestfs_last_error (g));
2072 JNIEXPORT void JNICALL
2073 Java_com_redhat_et_libguestfs__1tar_1out
2074 (JNIEnv *env, jobject obj, jlong jg, jstring jdirectory, jstring jtarfile)
2076 guestfs_h *g = (guestfs_h *) jg;
2078 const char *directory;
2079 const char *tarfile;
2081 directory = (*env)->GetStringUTFChars (env, jdirectory, NULL);
2082 tarfile = (*env)->GetStringUTFChars (env, jtarfile, NULL);
2083 r = guestfs_tar_out (g, directory, tarfile);
2084 (*env)->ReleaseStringUTFChars (env, jdirectory, directory);
2085 (*env)->ReleaseStringUTFChars (env, jtarfile, tarfile);
2087 throw_exception (env, guestfs_last_error (g));
2092 JNIEXPORT void JNICALL
2093 Java_com_redhat_et_libguestfs__1tgz_1in
2094 (JNIEnv *env, jobject obj, jlong jg, jstring jtarball, jstring jdirectory)
2096 guestfs_h *g = (guestfs_h *) jg;
2098 const char *tarball;
2099 const char *directory;
2101 tarball = (*env)->GetStringUTFChars (env, jtarball, NULL);
2102 directory = (*env)->GetStringUTFChars (env, jdirectory, NULL);
2103 r = guestfs_tgz_in (g, tarball, directory);
2104 (*env)->ReleaseStringUTFChars (env, jtarball, tarball);
2105 (*env)->ReleaseStringUTFChars (env, jdirectory, directory);
2107 throw_exception (env, guestfs_last_error (g));
2112 JNIEXPORT void JNICALL
2113 Java_com_redhat_et_libguestfs__1tgz_1out
2114 (JNIEnv *env, jobject obj, jlong jg, jstring jdirectory, jstring jtarball)
2116 guestfs_h *g = (guestfs_h *) jg;
2118 const char *directory;
2119 const char *tarball;
2121 directory = (*env)->GetStringUTFChars (env, jdirectory, NULL);
2122 tarball = (*env)->GetStringUTFChars (env, jtarball, NULL);
2123 r = guestfs_tgz_out (g, directory, tarball);
2124 (*env)->ReleaseStringUTFChars (env, jdirectory, directory);
2125 (*env)->ReleaseStringUTFChars (env, jtarball, tarball);
2127 throw_exception (env, guestfs_last_error (g));