ffi-vix_disk_lib 1.3.0 → 1.4.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 90e6eb50f5e487fd0bcce073027cbfa91adfaa2115886ac1631ab77ee7341eb7
4
- data.tar.gz: 93a38079d647b491cb063a21fbe68cd8b69ae7bcb43d3cb7a6d67f536778d38d
3
+ metadata.gz: dec46d727021a1399ce41f4e7caab724adcac94c5c6d542386028b983757678c
4
+ data.tar.gz: 430e64b3014c80bc40eed3c747081f14455ae1601d663885319fbfcf5fe2a35b
5
5
  SHA512:
6
- metadata.gz: 7a4a076169604a867a0ee9b487a5a7fad2753dbd1c6efc12811a08c608b244b1257944d80d7427c234b15369c7313c8ef5eee4a4924d50f3fc4844e77d8ed0f1
7
- data.tar.gz: d41e1d4816fa0366c7af47dd9dd36641993cdc9997b374672387858ad338da4866f1c6e4e01badae4c5a906afa4eb32b7748d99aa0c70b4f031b5dc4adddb4de
6
+ metadata.gz: b2ea59744d68169c3d6e00a99730fab4875679b8ad31ba7781d3504560183eb99502c90614af933c98e9c8d3f9541f4bc5bfc7fa5392a9e09c8db993ba718373
7
+ data.tar.gz: eeb46c80f91637d872bc06bfd2b5bb29b87eb34310548204c19a7514b38a755a63560c72a519043103a50a7173787846a2f988f695f80ff066876b48e8eeaac4
@@ -19,7 +19,7 @@ module FFI
19
19
  nil
20
20
  end
21
21
 
22
- candidate_versions = %w[8.0.0 7.0.3 7.0.2 7.0.1 7.0.0 6.7.3 6.7.2 6.7.1 6.7.0 6.5.4 6.5.3 6.5.2 6.5.1 6.5.0 6.0.3 6.0.2 6.0.1 6.0.0]
22
+ candidate_versions = %w[8.0.3 8.0.2 8.0.1 8.0.0 7.0.3 7.0.2 7.0.1 7.0.0 6.7.3 6.7.2 6.7.1 6.7.0 6.5.4 6.5.3 6.5.2 6.5.1 6.5.0 6.0.3 6.0.2 6.0.1 6.0.0]
23
23
  candidate_libraries = candidate_versions.map { |v| "vixDiskLib.so.#{v}" }
24
24
 
25
25
  # LD_LIBRARY_PATH/DYLD_LIBRARY_PATH is not passed to child process on a Mac with SIP
@@ -1,5 +1,5 @@
1
1
  module FFI
2
2
  module VixDiskLib
3
- VERSION = "1.3.0"
3
+ VERSION = "1.4.0"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ffi-vix_disk_lib
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.0
4
+ version: 1.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jerry Keselman
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2022-12-21 00:00:00.000000000 Z
13
+ date: 2024-10-21 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: ffi
@@ -119,12 +119,6 @@ files:
119
119
  - lib/ffi-vix_disk_lib/safe_create_params.rb
120
120
  - lib/ffi-vix_disk_lib/struct.rb
121
121
  - lib/ffi-vix_disk_lib/version.rb
122
- - spec/ext/.gitignore
123
- - spec/ext/Makefile
124
- - spec/ext/vixDiskLib.c
125
- - spec/ffi-vix_disk_lib/api_spec.rb
126
- - spec/ffi-vix_disk_lib/api_wrapper_spec.rb
127
- - spec/spec_helper.rb
128
122
  homepage: http://github.com/ManageIQ/ffi-vix_disk_lib
129
123
  licenses:
130
124
  - Apache-2.0
@@ -144,14 +138,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
144
138
  - !ruby/object:Gem::Version
145
139
  version: '0'
146
140
  requirements: []
147
- rubygems_version: 3.3.15
141
+ rubygems_version: 3.4.20
148
142
  signing_key:
149
143
  specification_version: 4
150
144
  summary: Ruby FFI Binding to VMware VixDiskLib.
151
- test_files:
152
- - spec/ext/.gitignore
153
- - spec/ext/Makefile
154
- - spec/ext/vixDiskLib.c
155
- - spec/ffi-vix_disk_lib/api_spec.rb
156
- - spec/ffi-vix_disk_lib/api_wrapper_spec.rb
157
- - spec/spec_helper.rb
145
+ test_files: []
data/spec/ext/.gitignore DELETED
@@ -1,3 +0,0 @@
1
- *.o
2
- *.d
3
- *.so*
data/spec/ext/Makefile DELETED
@@ -1,30 +0,0 @@
1
- CC=gcc
2
- CFLAGS=-I.
3
- CFLAGS = -fPIC -O0 -g
4
- LDFLAGS = -shared
5
- LN = ln -sf
6
- SRCS = vixDiskLib.c
7
- OBJS = ${SRCS:.c=.o}
8
- TARGET_LIB = libvixDiskLib.so
9
- MAJOR_VERSION = $(shell echo ${VDDK_VERSION} | cut -f1 -d.)
10
- VDDK_VERSION ?= 6.7.0
11
-
12
- .PHONY: all
13
- all: ${TARGET_LIB}.${VDDK_VERSION}
14
-
15
- ${SRCS:.c=.d}:%.d:%.c
16
- ${CC} ${CFLAGS} -MM $< >$@
17
-
18
- ${TARGET_LIB}.${MAJOR_VERSION}: ${TARGET_LIB}
19
- ${LN} $^ $@
20
- ${TARGET_LIB}.${VDDK_VERSION}: ${TARGET_LIB}.${MAJOR_VERSION}
21
- ${LN} $^ $@
22
-
23
- ${TARGET_LIB}: ${OBJS}
24
- ${CC} ${LDFLAGS} -o $@ $^
25
-
26
- include ${SRCS:.c=.d}
27
-
28
- .PHONY: clean
29
- clean:
30
- -${RM} ${TARGET_LIB} ${TARGET_LIB}.${MAJOR_VERSION} ${TARGET_LIB}.${VDDK_VERSION} ${OBJS} ${SRCS:.c=.d}
@@ -1,456 +0,0 @@
1
- #include <stdlib.h>
2
- #include <stddef.h>
3
- #include <stdarg.h>
4
- #include <stdint.h>
5
-
6
- typedef uint64_t uint64;
7
- typedef int64_t int64;
8
- typedef uint32_t uint32;
9
- typedef int32_t int32;
10
- typedef uint16_t uint16;
11
- typedef int16_t int16;
12
- typedef uint8_t uint8;
13
- typedef int8_t int8;
14
- typedef char Bool;
15
- typedef uint64 VixError;
16
-
17
- enum {
18
- VIX_OK = 0,
19
- };
20
-
21
- typedef struct VixDiskLibHandleStruct VixDiskLibHandleStruct;
22
- typedef VixDiskLibHandleStruct *VixDiskLibHandle;
23
- typedef void (VixDiskLibGenericLogFunc)(const char *fmt, va_list args);
24
- struct VixDiskLibConnectParam;
25
- typedef struct VixDiskLibConnectParam *VixDiskLibConnection;
26
- typedef Bool (*VixDiskLibProgressFunc)(void *progressData,
27
- int percentCompleted);
28
- typedef void (*VixDiskLibCompletionCB)(void *cbData, VixError result);
29
- typedef enum {
30
- VIXDISKLIB_DISK_UNKNOWN = 256
31
- } VixDiskLibDiskType;
32
-
33
- typedef enum {
34
- VIXDISKLIB_ADAPTER_UNKNOWN = 256
35
- } VixDiskLibAdapterType;
36
-
37
- typedef uint64 VixDiskLibSectorType;
38
-
39
- typedef struct {
40
- VixDiskLibDiskType diskType;
41
- VixDiskLibAdapterType adapterType;
42
- uint16 hwVersion;
43
- VixDiskLibSectorType capacity;
44
- } VixDiskLibCreateParams;
45
-
46
- typedef enum {
47
- VIXDISKLIB_CRED_UNKNOWN = 256
48
- } VixDiskLibCredType;
49
-
50
- typedef struct {
51
- uint32 cylinders;
52
- uint32 heads;
53
- uint32 sectors;
54
- } VixDiskLibGeometry;
55
-
56
- typedef struct {
57
- VixDiskLibGeometry biosGeo; // BIOS geometry for booting and partitioning
58
- VixDiskLibGeometry physGeo; // physical geometry
59
- VixDiskLibSectorType capacity; // total capacity in sectors
60
- VixDiskLibAdapterType adapterType; // adapter type
61
- int numLinks; // number of links (i.e. base disk + redo logs)
62
- char *parentFileNameHint; // parent file for a redo log
63
- char *uuid; // disk UUID
64
- } VixDiskLibInfo;
65
-
66
- typedef struct VixDiskLibConnectParamsState VixDiskLibConnectParamsState;
67
-
68
- typedef struct {
69
- VixDiskLibSectorType offset; // offset in sectors
70
- VixDiskLibSectorType length;
71
- } VixDiskLibBlock;
72
-
73
- typedef struct {
74
- uint32 numBlocks;
75
- VixDiskLibBlock blocks[1];
76
- } VixDiskLibBlockList;
77
-
78
- typedef struct {
79
- char *id;
80
- char *datastoreMoRef;
81
- char *ssId;
82
- } VixDiskLibVStorageObjectSpec;
83
-
84
- typedef enum {
85
- VIXDISKLIB_SPEC_UNKNOWN = 2
86
- } VixDiskLibSpecType;
87
-
88
- typedef struct {
89
- char *vmxSpec; // URL like spec of the VM.
90
- char *serverName; // Name or IP address of VC / ESX.
91
- char *thumbPrint; // SSL Certificate thumb print.
92
- long privateUse; // This value is ignored.
93
- VixDiskLibCredType credType;
94
-
95
- union VixDiskLibCreds {
96
- struct VixDiskLibUidPasswdCreds {
97
- char *userName; // User id and password on the
98
- char *password; // VC/ESX host.
99
- } uid;
100
- struct VixDiskLibSessionIdCreds { // Not supported in 1.0
101
- char *cookie;
102
- char *userName;
103
- char *key;
104
- } sessionId;
105
- struct VixDiskLibTicketIdCreds *ticketId; // Internal use only.
106
- } creds;
107
-
108
- uint32 port; // port to use for authenticating with VC/ESXi host
109
- uint32 nfcHostPort; // port to use for establishing NFC connection to ESXi host
110
-
111
- char *vimApiVer; // not used
112
- char reserved[8]; // internal use only
113
- VixDiskLibConnectParamsState *state; // internal use only
114
-
115
- union {
116
- VixDiskLibVStorageObjectSpec vStorageObjSpec;
117
- } spec;
118
- VixDiskLibSpecType specType; // disk or VM spec
119
- } VixDiskLibConnectParams;
120
-
121
- VixError
122
- VixDiskLib_InitEx(uint32 majorVersion,
123
- uint32 minorVersion,
124
- VixDiskLibGenericLogFunc *log,
125
- VixDiskLibGenericLogFunc *warn,
126
- VixDiskLibGenericLogFunc *panic,
127
- const char* libDir,
128
- const char* configFile)
129
- {
130
- return VIX_OK;
131
- }
132
-
133
- VixError
134
- VixDiskLib_Init(uint32 majorVersion,
135
- uint32 minorVersion,
136
- VixDiskLibGenericLogFunc *log,
137
- VixDiskLibGenericLogFunc *warn,
138
- VixDiskLibGenericLogFunc *panic,
139
- const char* libDir)
140
- {
141
- return VIX_OK;
142
- }
143
-
144
- void
145
- VixDiskLib_Exit(void)
146
- {
147
- }
148
-
149
- const char *
150
- VixDiskLib_ListTransportModes(void)
151
- {
152
- return "";
153
- }
154
-
155
- VixError
156
- VixDiskLib_Cleanup(const VixDiskLibConnectParams *connectParams,
157
- uint32 *numCleanedUp, uint32 *numRemaining)
158
- {
159
- return VIX_OK;
160
- }
161
-
162
- VixError
163
- VixDiskLib_Connect(const VixDiskLibConnectParams *connectParams,
164
- VixDiskLibConnection *connection)
165
- {
166
- return VIX_OK;
167
- }
168
-
169
- VixError
170
- VixDiskLib_PrepareForAccess(const VixDiskLibConnectParams *connectParams,
171
- const char *identity)
172
- {
173
- return VIX_OK;
174
- }
175
-
176
- VixError
177
- VixDiskLib_ConnectEx(const VixDiskLibConnectParams *connectParams,
178
- Bool readOnly,
179
- const char *snapshotRef,
180
- const char *transportModes,
181
- VixDiskLibConnection *connection)
182
- {
183
- return VIX_OK;
184
- }
185
-
186
- VixError
187
- VixDiskLib_Disconnect(VixDiskLibConnection connection)
188
- {
189
- return VIX_OK;
190
- }
191
-
192
- VixError
193
- VixDiskLib_EndAccess(const VixDiskLibConnectParams *connectParams,
194
- const char *identity)
195
- {
196
- return VIX_OK;
197
- }
198
-
199
- VixError
200
- VixDiskLib_Create(const VixDiskLibConnection connection,
201
- const char *path,
202
- const VixDiskLibCreateParams *createParams,
203
- VixDiskLibProgressFunc progressFunc,
204
- void *progressCallbackData)
205
- {
206
- return VIX_OK;
207
- }
208
-
209
- VixError
210
- VixDiskLib_CreateChild(VixDiskLibHandle diskHandle,
211
- const char *childPath,
212
- VixDiskLibDiskType diskType,
213
- VixDiskLibProgressFunc progressFunc,
214
- void *progressCallbackData)
215
- {
216
- return VIX_OK;
217
- }
218
-
219
- VixError
220
- VixDiskLib_Open(const VixDiskLibConnection connection,
221
- const char *path,
222
- uint32 flags,
223
- VixDiskLibHandle *diskHandle)
224
- {
225
- return VIX_OK;
226
- }
227
-
228
- VixError
229
- VixDiskLib_QueryAllocatedBlocks(VixDiskLibHandle diskHandle,
230
- VixDiskLibSectorType startSector,
231
- VixDiskLibSectorType numSectors,
232
- VixDiskLibSectorType chunkSize,
233
- VixDiskLibBlockList **blockList)
234
- {
235
- return VIX_OK;
236
- }
237
-
238
- VixError
239
- VixDiskLib_FreeBlockList(VixDiskLibBlockList *blockList)
240
- {
241
- return VIX_OK;
242
- }
243
-
244
- VixError
245
- VixDiskLib_GetInfo(VixDiskLibHandle diskHandle,
246
- VixDiskLibInfo **info)
247
- {
248
- return VIX_OK;
249
- }
250
-
251
- void
252
- VixDiskLib_FreeInfo(VixDiskLibInfo *info)
253
- {
254
- }
255
-
256
- const char *
257
- VixDiskLib_GetTransportMode(VixDiskLibHandle diskHandle)
258
- {
259
- return "";
260
- }
261
-
262
- VixError
263
- VixDiskLib_Close(VixDiskLibHandle diskHandle)
264
- {
265
- return VIX_OK;
266
- }
267
-
268
- VixError
269
- VixDiskLib_Read(VixDiskLibHandle diskHandle,
270
- VixDiskLibSectorType startSector,
271
- VixDiskLibSectorType numSectors,
272
- uint8 *readBuffer)
273
- {
274
- return VIX_OK;
275
- }
276
-
277
- VixError
278
- VixDiskLib_ReadAsync(VixDiskLibHandle diskHandle,
279
- VixDiskLibSectorType startSector,
280
- VixDiskLibSectorType numSectors,
281
- uint8 *readBuffer,
282
- VixDiskLibCompletionCB callback,
283
- void *cbData)
284
- {
285
- return VIX_OK;
286
- }
287
-
288
- VixError
289
- VixDiskLib_Write(VixDiskLibHandle diskHandle,
290
- VixDiskLibSectorType startSector,
291
- VixDiskLibSectorType numSectors,
292
- const uint8 *writeBuffer)
293
- {
294
- return VIX_OK;
295
- }
296
-
297
- VixError
298
- VixDiskLib_WriteAsync(VixDiskLibHandle diskHandle,
299
- VixDiskLibSectorType startSector,
300
- VixDiskLibSectorType numSectors,
301
- const uint8 *writeBuffer,
302
- VixDiskLibCompletionCB callback,
303
- void *cbData)
304
- {
305
- return VIX_OK;
306
- }
307
-
308
- VixError
309
- VixDiskLib_Flush(VixDiskLibHandle diskHandle)
310
- {
311
- return VIX_OK;
312
- }
313
-
314
- VixError
315
- VixDiskLib_Wait(VixDiskLibHandle diskHandle)
316
- {
317
- return VIX_OK;
318
- }
319
-
320
- VixError
321
- VixDiskLib_ReadMetadata(VixDiskLibHandle diskHandle,
322
- const char *key,
323
- char *buf,
324
- size_t bufLen,
325
- size_t *requiredLen)
326
- {
327
- return VIX_OK;
328
- }
329
-
330
- VixError
331
- VixDiskLib_WriteMetadata(VixDiskLibHandle diskHandle,
332
- const char *key,
333
- const char *val)
334
- {
335
- return VIX_OK;
336
- }
337
-
338
- VixError
339
- VixDiskLib_GetMetadataKeys(VixDiskLibHandle diskHandle,
340
- char *keys,
341
- size_t maxLen,
342
- size_t *requiredLen)
343
- {
344
- return VIX_OK;
345
- }
346
-
347
- VixError
348
- VixDiskLib_Unlink(VixDiskLibConnection connection,
349
- const char *path)
350
- {
351
- return VIX_OK;
352
- }
353
-
354
- VixError
355
- VixDiskLib_Grow(VixDiskLibConnection connection,
356
- const char *path,
357
- VixDiskLibSectorType capacity,
358
- Bool updateGeometry,
359
- VixDiskLibProgressFunc progressFunc,
360
- void *progressCallbackData)
361
- {
362
- return VIX_OK;
363
- }
364
-
365
- VixError
366
- VixDiskLib_Shrink(VixDiskLibHandle diskHandle,
367
- VixDiskLibProgressFunc progressFunc,
368
- void *progressCallbackData)
369
- {
370
- return VIX_OK;
371
- }
372
-
373
- VixError
374
- VixDiskLib_Defragment(VixDiskLibHandle diskHandle,
375
- VixDiskLibProgressFunc progressFunc,
376
- void *progressCallbackData)
377
- {
378
- return VIX_OK;
379
- }
380
-
381
- VixError
382
- VixDiskLib_Rename(const char *srcFileName,
383
- const char *dstFileName)
384
- {
385
- return VIX_OK;
386
- }
387
-
388
- VixError
389
- VixDiskLib_Clone(const VixDiskLibConnection dstConnection,
390
- const char *dstPath,
391
- const VixDiskLibConnection srcConnection,
392
- const char *srcPath,
393
- const VixDiskLibCreateParams *vixCreateParams,
394
- VixDiskLibProgressFunc progressFunc,
395
- void *progressCallbackData,
396
- Bool overWrite)
397
- {
398
- return VIX_OK;
399
- }
400
-
401
- char *
402
- VixDiskLib_GetErrorText(VixError err, const char *locale)
403
- {
404
- return NULL;
405
- }
406
-
407
- void
408
- VixDiskLib_FreeErrorText(char* errMsg)
409
- {
410
- }
411
-
412
- VixError
413
- VixDiskLib_IsAttachPossible(VixDiskLibHandle parent, VixDiskLibHandle child)
414
- {
415
- return VIX_OK;
416
- }
417
-
418
- VixError
419
- VixDiskLib_Attach(VixDiskLibHandle parent, VixDiskLibHandle child)
420
- {
421
- return VIX_OK;
422
- }
423
-
424
- VixError
425
- VixDiskLib_SpaceNeededForClone(VixDiskLibHandle diskHandle,
426
- VixDiskLibDiskType cloneDiskType,
427
- uint64* spaceNeeded)
428
- {
429
- return VIX_OK;
430
- }
431
-
432
- VixError
433
- VixDiskLib_CheckRepair(const VixDiskLibConnection connection,
434
- const char *filename,
435
- Bool repair)
436
- {
437
- return VIX_OK;
438
- }
439
-
440
- VixError
441
- VixDiskLib_GetConnectParams(const VixDiskLibConnection connection,
442
- VixDiskLibConnectParams** connectParams)
443
- {
444
- return VIX_OK;
445
- }
446
-
447
- void
448
- VixDiskLib_FreeConnectParams(VixDiskLibConnectParams* connectParams)
449
- {
450
- }
451
-
452
- VixDiskLibConnectParams *
453
- VixDiskLib_AllocateConnectParams()
454
- {
455
- return NULL;
456
- }
@@ -1,38 +0,0 @@
1
- describe FFI::VixDiskLib::API do
2
- let(:log) { lambda { |_string, _pointer| } }
3
- let(:lib_dir) { nil }
4
- let(:version) { ENV.fetch("VDDK_VERSION", "6.7.0") }
5
-
6
- it "VERSION" do
7
- expect(described_class::VERSION).to eq version
8
- end
9
-
10
- it "VERSION_MAJOR" do
11
- expect(described_class::VERSION_MAJOR).to eq Gem::Version.new(version).segments[0]
12
- end
13
-
14
- it "VERSION_MINOR" do
15
- expect(described_class::VERSION_MINOR).to eq Gem::Version.new(version).segments[1]
16
- end
17
-
18
- describe ".init" do
19
- it "initializes successfully" do
20
- err = described_class.init(described_class::VERSION_MAJOR, described_class::VERSION_MINOR, log, log, log, lib_dir)
21
- expect(err).to eq(described_class::VixErrorType[:VIX_OK])
22
- end
23
- end
24
-
25
- describe "ConnectParams" do
26
- context "with #{described_class::VERSION}" do
27
- if Gem::Version.new(described_class::VERSION) >= Gem::Version.new("6.5.0")
28
- it "has vimApiVer" do
29
- expect(described_class::ConnectParams.members).to include(:vimApiVer)
30
- end
31
- else
32
- it "doesn't have vimApiVer" do
33
- expect(described_class::ConnectParams.members).to_not include(:vimApiVer)
34
- end
35
- end
36
- end
37
- end
38
- end
@@ -1,15 +0,0 @@
1
- require 'ffi-vix_disk_lib/api_wrapper'
2
-
3
- describe FFI::VixDiskLib::ApiWrapper do
4
- context "connect" do
5
- before do
6
- described_class.init
7
- end
8
-
9
- it "returns a connection" do
10
- connect_params = {}
11
- connection = described_class.connect(connect_params)
12
- expect(connection).not_to be_nil
13
- end
14
- end
15
- end
data/spec/spec_helper.rb DELETED
@@ -1,15 +0,0 @@
1
- if ENV['CI']
2
- require 'simplecov'
3
- SimpleCov.start
4
- end
5
-
6
- # LD_LIBRARY_PATH/DYLD_LIBRARY_PATH is not passed to child process on a Mac with SIP
7
- # enabled, so build our own rudimentary version based on a different name
8
- ENV["LIBRARY_PATH"] ||= File.expand_path("ext", __dir__) if RbConfig::CONFIG["host_os"] =~ /darwin/
9
-
10
- require 'ffi-vix_disk_lib'
11
- puts
12
- puts "\e[93mUsing libvixDiskLib #{FFI::VixDiskLib::API::VERSION}\e[0m"
13
-
14
- RSpec.configure do |config|
15
- end