nl-linux 0.2.3 → 0.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -12,6 +12,32 @@ class Nfsd < ::Nl::Family
12
12
  module Structs
13
13
  end
14
14
  module AttributeSets
15
+ class CacheNotify < ::Nl::Protocols::Genl::AttributeSet
16
+ # Abstract class
17
+ class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
18
+ end
19
+ class CacheType < Attribute
20
+ TYPE = 1
21
+ NAME = :"cache_type"
22
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
23
+ end
24
+ # :nodoc:
25
+ BY_NAME = Ractor.make_shareable({:"cache_type" => CacheType}) #: Hash[::Symbol, Attribute]
26
+ # :nodoc:
27
+ BY_TYPE = Ractor.make_shareable({1 => CacheType}) #: Hash[::Integer, Attribute]
28
+ class << self
29
+ # Looks up Attribute class by name.
30
+ #--
31
+ # @rbs name: Symbol
32
+ # @rbs return: Attribute
33
+ def by_name(name); BY_NAME.fetch(name); end
34
+ # Looks up Attribute class by type value.
35
+ #--
36
+ # @rbs type: Integer
37
+ # @rbs return: Attribute
38
+ def by_type(type); BY_TYPE.fetch(type); end
39
+ end
40
+ end
15
41
  class RpcStatus < ::Nl::Protocols::Genl::AttributeSet
16
42
  # Abstract class
17
43
  class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
@@ -127,10 +153,20 @@ class Nfsd < ::Nl::Family
127
153
  NAME = :"scope"
128
154
  DATATYPE = ::Nl::Protocols::Genl::DataTypes::String.new(check: nil)
129
155
  end
156
+ class MinThreads < Attribute
157
+ TYPE = 5
158
+ NAME = :"min_threads"
159
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
160
+ end
161
+ class FhKey < Attribute
162
+ TYPE = 6
163
+ NAME = :"fh_key"
164
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: -> { raise ArgumentError, "Value #{it.inspect} is not equal to length 16" unless it.bytesize == 16 })
165
+ end
130
166
  # :nodoc:
131
- BY_NAME = Ractor.make_shareable({:"threads" => Threads, :"gracetime" => Gracetime, :"leasetime" => Leasetime, :"scope" => Scope}) #: Hash[::Symbol, Attribute]
167
+ BY_NAME = Ractor.make_shareable({:"threads" => Threads, :"gracetime" => Gracetime, :"leasetime" => Leasetime, :"scope" => Scope, :"min_threads" => MinThreads, :"fh_key" => FhKey}) #: Hash[::Symbol, Attribute]
132
168
  # :nodoc:
133
- BY_TYPE = Ractor.make_shareable({1 => Threads, 2 => Gracetime, 3 => Leasetime, 4 => Scope}) #: Hash[::Integer, Attribute]
169
+ BY_TYPE = Ractor.make_shareable({1 => Threads, 2 => Gracetime, 3 => Leasetime, 4 => Scope, 5 => MinThreads, 6 => FhKey}) #: Hash[::Integer, Attribute]
134
170
  class << self
135
171
  # Looks up Attribute class by name.
136
172
  #--
@@ -292,8 +328,394 @@ class Nfsd < ::Nl::Family
292
328
  def by_type(type); BY_TYPE.fetch(type); end
293
329
  end
294
330
  end
331
+ class Fslocation < ::Nl::Protocols::Genl::AttributeSet
332
+ # Abstract class
333
+ class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
334
+ end
335
+ class Host < Attribute
336
+ TYPE = 1
337
+ NAME = :"host"
338
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::String.new(check: nil)
339
+ end
340
+ class Path < Attribute
341
+ TYPE = 2
342
+ NAME = :"path"
343
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::String.new(check: nil)
344
+ end
345
+ # :nodoc:
346
+ BY_NAME = Ractor.make_shareable({:"host" => Host, :"path" => Path}) #: Hash[::Symbol, Attribute]
347
+ # :nodoc:
348
+ BY_TYPE = Ractor.make_shareable({1 => Host, 2 => Path}) #: Hash[::Integer, Attribute]
349
+ class << self
350
+ # Looks up Attribute class by name.
351
+ #--
352
+ # @rbs name: Symbol
353
+ # @rbs return: Attribute
354
+ def by_name(name); BY_NAME.fetch(name); end
355
+ # Looks up Attribute class by type value.
356
+ #--
357
+ # @rbs type: Integer
358
+ # @rbs return: Attribute
359
+ def by_type(type); BY_TYPE.fetch(type); end
360
+ end
361
+ end
362
+ class Fslocations < ::Nl::Protocols::Genl::AttributeSet
363
+ # Abstract class
364
+ class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
365
+ end
366
+ class Location < Attribute
367
+ TYPE = 1
368
+ NAME = :"location"
369
+ end
370
+ # :nodoc:
371
+ BY_NAME = Ractor.make_shareable({:"location" => Location}) #: Hash[::Symbol, Attribute]
372
+ # :nodoc:
373
+ BY_TYPE = Ractor.make_shareable({1 => Location}) #: Hash[::Integer, Attribute]
374
+ class << self
375
+ # Looks up Attribute class by name.
376
+ #--
377
+ # @rbs name: Symbol
378
+ # @rbs return: Attribute
379
+ def by_name(name); BY_NAME.fetch(name); end
380
+ # Looks up Attribute class by type value.
381
+ #--
382
+ # @rbs type: Integer
383
+ # @rbs return: Attribute
384
+ def by_type(type); BY_TYPE.fetch(type); end
385
+ end
386
+ end
387
+ class AuthFlavor < ::Nl::Protocols::Genl::AttributeSet
388
+ # Abstract class
389
+ class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
390
+ end
391
+ class Pseudoflavor < Attribute
392
+ TYPE = 1
393
+ NAME = :"pseudoflavor"
394
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
395
+ end
396
+ class Flags < Attribute
397
+ TYPE = 2
398
+ NAME = :"flags"
399
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
400
+ end
401
+ # :nodoc:
402
+ BY_NAME = Ractor.make_shareable({:"pseudoflavor" => Pseudoflavor, :"flags" => Flags}) #: Hash[::Symbol, Attribute]
403
+ # :nodoc:
404
+ BY_TYPE = Ractor.make_shareable({1 => Pseudoflavor, 2 => Flags}) #: Hash[::Integer, Attribute]
405
+ class << self
406
+ # Looks up Attribute class by name.
407
+ #--
408
+ # @rbs name: Symbol
409
+ # @rbs return: Attribute
410
+ def by_name(name); BY_NAME.fetch(name); end
411
+ # Looks up Attribute class by type value.
412
+ #--
413
+ # @rbs type: Integer
414
+ # @rbs return: Attribute
415
+ def by_type(type); BY_TYPE.fetch(type); end
416
+ end
417
+ end
418
+ class SvcExport < ::Nl::Protocols::Genl::AttributeSet
419
+ # Abstract class
420
+ class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
421
+ end
422
+ class Seqno < Attribute
423
+ TYPE = 1
424
+ NAME = :"seqno"
425
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
426
+ end
427
+ class Client < Attribute
428
+ TYPE = 2
429
+ NAME = :"client"
430
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::String.new(check: nil)
431
+ end
432
+ class Path < Attribute
433
+ TYPE = 3
434
+ NAME = :"path"
435
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::String.new(check: nil)
436
+ end
437
+ class Negative < Attribute
438
+ TYPE = 4
439
+ NAME = :"negative"
440
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
441
+ end
442
+ class Expiry < Attribute
443
+ TYPE = 5
444
+ NAME = :"expiry"
445
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
446
+ end
447
+ class AnonUid < Attribute
448
+ TYPE = 6
449
+ NAME = :"anon_uid"
450
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
451
+ end
452
+ class AnonGid < Attribute
453
+ TYPE = 7
454
+ NAME = :"anon_gid"
455
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
456
+ end
457
+ class Fslocations < Attribute
458
+ TYPE = 8
459
+ NAME = :"fslocations"
460
+ end
461
+ class Uuid < Attribute
462
+ TYPE = 9
463
+ NAME = :"uuid"
464
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
465
+ end
466
+ class Secinfo < Attribute
467
+ TYPE = 10
468
+ NAME = :"secinfo"
469
+ end
470
+ class Xprtsec < Attribute
471
+ TYPE = 11
472
+ NAME = :"xprtsec"
473
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
474
+ end
475
+ class Flags < Attribute
476
+ TYPE = 12
477
+ NAME = :"flags"
478
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
479
+ end
480
+ class Fsid < Attribute
481
+ TYPE = 13
482
+ NAME = :"fsid"
483
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::S32, check: nil)
484
+ end
485
+ # :nodoc:
486
+ BY_NAME = Ractor.make_shareable({:"seqno" => Seqno, :"client" => Client, :"path" => Path, :"negative" => Negative, :"expiry" => Expiry, :"anon_uid" => AnonUid, :"anon_gid" => AnonGid, :"fslocations" => Fslocations, :"uuid" => Uuid, :"secinfo" => Secinfo, :"xprtsec" => Xprtsec, :"flags" => Flags, :"fsid" => Fsid}) #: Hash[::Symbol, Attribute]
487
+ # :nodoc:
488
+ BY_TYPE = Ractor.make_shareable({1 => Seqno, 2 => Client, 3 => Path, 4 => Negative, 5 => Expiry, 6 => AnonUid, 7 => AnonGid, 8 => Fslocations, 9 => Uuid, 10 => Secinfo, 11 => Xprtsec, 12 => Flags, 13 => Fsid}) #: Hash[::Integer, Attribute]
489
+ class << self
490
+ # Looks up Attribute class by name.
491
+ #--
492
+ # @rbs name: Symbol
493
+ # @rbs return: Attribute
494
+ def by_name(name); BY_NAME.fetch(name); end
495
+ # Looks up Attribute class by type value.
496
+ #--
497
+ # @rbs type: Integer
498
+ # @rbs return: Attribute
499
+ def by_type(type); BY_TYPE.fetch(type); end
500
+ end
501
+ end
502
+ class SvcExportReqs < ::Nl::Protocols::Genl::AttributeSet
503
+ # Abstract class
504
+ class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
505
+ end
506
+ class Requests < Attribute
507
+ TYPE = 1
508
+ NAME = :"requests"
509
+ end
510
+ # :nodoc:
511
+ BY_NAME = Ractor.make_shareable({:"requests" => Requests}) #: Hash[::Symbol, Attribute]
512
+ # :nodoc:
513
+ BY_TYPE = Ractor.make_shareable({1 => Requests}) #: Hash[::Integer, Attribute]
514
+ class << self
515
+ # Looks up Attribute class by name.
516
+ #--
517
+ # @rbs name: Symbol
518
+ # @rbs return: Attribute
519
+ def by_name(name); BY_NAME.fetch(name); end
520
+ # Looks up Attribute class by type value.
521
+ #--
522
+ # @rbs type: Integer
523
+ # @rbs return: Attribute
524
+ def by_type(type); BY_TYPE.fetch(type); end
525
+ end
526
+ end
527
+ class Expkey < ::Nl::Protocols::Genl::AttributeSet
528
+ # Abstract class
529
+ class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
530
+ end
531
+ class Seqno < Attribute
532
+ TYPE = 1
533
+ NAME = :"seqno"
534
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
535
+ end
536
+ class Client < Attribute
537
+ TYPE = 2
538
+ NAME = :"client"
539
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::String.new(check: nil)
540
+ end
541
+ class Fsidtype < Attribute
542
+ TYPE = 3
543
+ NAME = :"fsidtype"
544
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
545
+ end
546
+ class Fsid < Attribute
547
+ TYPE = 4
548
+ NAME = :"fsid"
549
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
550
+ end
551
+ class Negative < Attribute
552
+ TYPE = 5
553
+ NAME = :"negative"
554
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
555
+ end
556
+ class Expiry < Attribute
557
+ TYPE = 6
558
+ NAME = :"expiry"
559
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
560
+ end
561
+ class Path < Attribute
562
+ TYPE = 7
563
+ NAME = :"path"
564
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::String.new(check: nil)
565
+ end
566
+ # :nodoc:
567
+ BY_NAME = Ractor.make_shareable({:"seqno" => Seqno, :"client" => Client, :"fsidtype" => Fsidtype, :"fsid" => Fsid, :"negative" => Negative, :"expiry" => Expiry, :"path" => Path}) #: Hash[::Symbol, Attribute]
568
+ # :nodoc:
569
+ BY_TYPE = Ractor.make_shareable({1 => Seqno, 2 => Client, 3 => Fsidtype, 4 => Fsid, 5 => Negative, 6 => Expiry, 7 => Path}) #: Hash[::Integer, Attribute]
570
+ class << self
571
+ # Looks up Attribute class by name.
572
+ #--
573
+ # @rbs name: Symbol
574
+ # @rbs return: Attribute
575
+ def by_name(name); BY_NAME.fetch(name); end
576
+ # Looks up Attribute class by type value.
577
+ #--
578
+ # @rbs type: Integer
579
+ # @rbs return: Attribute
580
+ def by_type(type); BY_TYPE.fetch(type); end
581
+ end
582
+ end
583
+ class ExpkeyReqs < ::Nl::Protocols::Genl::AttributeSet
584
+ # Abstract class
585
+ class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
586
+ end
587
+ class Requests < Attribute
588
+ TYPE = 1
589
+ NAME = :"requests"
590
+ end
591
+ # :nodoc:
592
+ BY_NAME = Ractor.make_shareable({:"requests" => Requests}) #: Hash[::Symbol, Attribute]
593
+ # :nodoc:
594
+ BY_TYPE = Ractor.make_shareable({1 => Requests}) #: Hash[::Integer, Attribute]
595
+ class << self
596
+ # Looks up Attribute class by name.
597
+ #--
598
+ # @rbs name: Symbol
599
+ # @rbs return: Attribute
600
+ def by_name(name); BY_NAME.fetch(name); end
601
+ # Looks up Attribute class by type value.
602
+ #--
603
+ # @rbs type: Integer
604
+ # @rbs return: Attribute
605
+ def by_type(type); BY_TYPE.fetch(type); end
606
+ end
607
+ end
608
+ class CacheFlush < ::Nl::Protocols::Genl::AttributeSet
609
+ # Abstract class
610
+ class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
611
+ end
612
+ class Mask < Attribute
613
+ TYPE = 1
614
+ NAME = :"mask"
615
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
616
+ end
617
+ # :nodoc:
618
+ BY_NAME = Ractor.make_shareable({:"mask" => Mask}) #: Hash[::Symbol, Attribute]
619
+ # :nodoc:
620
+ BY_TYPE = Ractor.make_shareable({1 => Mask}) #: Hash[::Integer, Attribute]
621
+ class << self
622
+ # Looks up Attribute class by name.
623
+ #--
624
+ # @rbs name: Symbol
625
+ # @rbs return: Attribute
626
+ def by_name(name); BY_NAME.fetch(name); end
627
+ # Looks up Attribute class by type value.
628
+ #--
629
+ # @rbs type: Integer
630
+ # @rbs return: Attribute
631
+ def by_type(type); BY_TYPE.fetch(type); end
632
+ end
633
+ end
634
+ class UnlockIp < ::Nl::Protocols::Genl::AttributeSet
635
+ # Abstract class
636
+ class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
637
+ end
638
+ class Address < Attribute
639
+ TYPE = 1
640
+ NAME = :"address"
641
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: -> { raise ArgumentError, "Value #{it.inspect} is shorter than minimum length 16" unless it.bytesize >= 16 })
642
+ end
643
+ # :nodoc:
644
+ BY_NAME = Ractor.make_shareable({:"address" => Address}) #: Hash[::Symbol, Attribute]
645
+ # :nodoc:
646
+ BY_TYPE = Ractor.make_shareable({1 => Address}) #: Hash[::Integer, Attribute]
647
+ class << self
648
+ # Looks up Attribute class by name.
649
+ #--
650
+ # @rbs name: Symbol
651
+ # @rbs return: Attribute
652
+ def by_name(name); BY_NAME.fetch(name); end
653
+ # Looks up Attribute class by type value.
654
+ #--
655
+ # @rbs type: Integer
656
+ # @rbs return: Attribute
657
+ def by_type(type); BY_TYPE.fetch(type); end
658
+ end
659
+ end
660
+ class UnlockFilesystem < ::Nl::Protocols::Genl::AttributeSet
661
+ # Abstract class
662
+ class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
663
+ end
664
+ class Path < Attribute
665
+ TYPE = 1
666
+ NAME = :"path"
667
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::String.new(check: nil)
668
+ end
669
+ # :nodoc:
670
+ BY_NAME = Ractor.make_shareable({:"path" => Path}) #: Hash[::Symbol, Attribute]
671
+ # :nodoc:
672
+ BY_TYPE = Ractor.make_shareable({1 => Path}) #: Hash[::Integer, Attribute]
673
+ class << self
674
+ # Looks up Attribute class by name.
675
+ #--
676
+ # @rbs name: Symbol
677
+ # @rbs return: Attribute
678
+ def by_name(name); BY_NAME.fetch(name); end
679
+ # Looks up Attribute class by type value.
680
+ #--
681
+ # @rbs type: Integer
682
+ # @rbs return: Attribute
683
+ def by_type(type); BY_TYPE.fetch(type); end
684
+ end
685
+ end
686
+ class UnlockExport < ::Nl::Protocols::Genl::AttributeSet
687
+ # Abstract class
688
+ class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
689
+ end
690
+ class Path < Attribute
691
+ TYPE = 1
692
+ NAME = :"path"
693
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::String.new(check: nil)
694
+ end
695
+ # :nodoc:
696
+ BY_NAME = Ractor.make_shareable({:"path" => Path}) #: Hash[::Symbol, Attribute]
697
+ # :nodoc:
698
+ BY_TYPE = Ractor.make_shareable({1 => Path}) #: Hash[::Integer, Attribute]
699
+ class << self
700
+ # Looks up Attribute class by name.
701
+ #--
702
+ # @rbs name: Symbol
703
+ # @rbs return: Attribute
704
+ def by_name(name); BY_NAME.fetch(name); end
705
+ # Looks up Attribute class by type value.
706
+ #--
707
+ # @rbs type: Integer
708
+ # @rbs return: Attribute
709
+ def by_type(type); BY_TYPE.fetch(type); end
710
+ end
711
+ end
295
712
  ServerProto::Version::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(Version)
296
713
  ServerSock::Addr::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(Sock)
714
+ Fslocations::Location::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(Fslocation)
715
+ SvcExport::Fslocations::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(Fslocations)
716
+ SvcExport::Secinfo::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(AuthFlavor)
717
+ SvcExportReqs::Requests::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(SvcExport)
718
+ ExpkeyReqs::Requests::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(Expkey)
297
719
  end
298
720
  module Messages
299
721
  # dump pending nfsd rpc
@@ -355,12 +777,12 @@ class Nfsd < ::Nl::Family
355
777
  # @rbs return: ::Integer
356
778
  def compound_ops; attributes[:"compound_ops"]&.value; end
357
779
  end
358
- # set the number of running threads
780
+ # set the maximum number of running threads
359
781
  class DoThreadsSetRequest < ::Nl::Protocols::Genl::Message
360
782
  TYPE = 2
361
783
  FIXED_HEADER = nil
362
784
  ATTRIBUTE_SET = AttributeSets::Server
363
- ATTRIBUTES = Ractor.make_shareable(%i[threads gracetime leasetime scope])
785
+ ATTRIBUTES = Ractor.make_shareable(%i[threads gracetime leasetime scope min_threads fh_key])
364
786
  # Gets the value of `threads` attribute in the message.
365
787
  #--
366
788
  # @rbs return: ::Integer
@@ -377,13 +799,21 @@ class Nfsd < ::Nl::Family
377
799
  #--
378
800
  # @rbs return: ::String
379
801
  def scope; attributes[:"scope"]&.value; end
802
+ # Gets the value of `min-threads` attribute in the message.
803
+ #--
804
+ # @rbs return: ::Integer
805
+ def min_threads; attributes[:"min_threads"]&.value; end
806
+ # Gets the value of `fh-key` attribute in the message.
807
+ #--
808
+ # @rbs return: untyped
809
+ def fh_key; attributes[:"fh_key"]&.value; end
380
810
  end
381
- # get the number of running threads
811
+ # get the maximum number of running threads
382
812
  class DoThreadsGetReply < ::Nl::Protocols::Genl::Message
383
813
  TYPE = 3
384
814
  FIXED_HEADER = nil
385
815
  ATTRIBUTE_SET = AttributeSets::Server
386
- ATTRIBUTES = Ractor.make_shareable(%i[threads gracetime leasetime scope])
816
+ ATTRIBUTES = Ractor.make_shareable(%i[threads gracetime leasetime scope min_threads])
387
817
  # Gets the value of `threads` attribute in the message.
388
818
  #--
389
819
  # @rbs return: ::Integer
@@ -400,6 +830,10 @@ class Nfsd < ::Nl::Family
400
830
  #--
401
831
  # @rbs return: ::String
402
832
  def scope; attributes[:"scope"]&.value; end
833
+ # Gets the value of `min-threads` attribute in the message.
834
+ #--
835
+ # @rbs return: ::Integer
836
+ def min_threads; attributes[:"min_threads"]&.value; end
403
837
  end
404
838
  # set nfs enabled versions
405
839
  class DoVersionSetRequest < ::Nl::Protocols::Genl::Message
@@ -471,10 +905,98 @@ class Nfsd < ::Nl::Family
471
905
  # @rbs return: ::Integer
472
906
  def npools; attributes[:"npools"]&.value; end
473
907
  end
908
+ # Dump all pending svc_export requests
909
+ class DumpSvcExportGetReqsReply < ::Nl::Protocols::Genl::Message
910
+ TYPE = 11
911
+ FIXED_HEADER = nil
912
+ ATTRIBUTE_SET = AttributeSets::SvcExportReqs
913
+ ATTRIBUTES = Ractor.make_shareable(%i[requests])
914
+ # Gets the value of `requests` attribute in the message.
915
+ #--
916
+ # @rbs return: AttributeSets::SvcExport
917
+ def requests; attributes[:"requests"]&.value; end
918
+ end
919
+ # Respond to one or more svc_export requests
920
+ class DoSvcExportSetReqsRequest < ::Nl::Protocols::Genl::Message
921
+ TYPE = 12
922
+ FIXED_HEADER = nil
923
+ ATTRIBUTE_SET = AttributeSets::SvcExportReqs
924
+ ATTRIBUTES = Ractor.make_shareable(%i[requests])
925
+ # Gets the value of `requests` attribute in the message.
926
+ #--
927
+ # @rbs return: AttributeSets::SvcExport
928
+ def requests; attributes[:"requests"]&.value; end
929
+ end
930
+ # Dump all pending expkey requests
931
+ class DumpExpkeyGetReqsReply < ::Nl::Protocols::Genl::Message
932
+ TYPE = 13
933
+ FIXED_HEADER = nil
934
+ ATTRIBUTE_SET = AttributeSets::ExpkeyReqs
935
+ ATTRIBUTES = Ractor.make_shareable(%i[requests])
936
+ # Gets the value of `requests` attribute in the message.
937
+ #--
938
+ # @rbs return: AttributeSets::Expkey
939
+ def requests; attributes[:"requests"]&.value; end
940
+ end
941
+ # Respond to one or more expkey requests
942
+ class DoExpkeySetReqsRequest < ::Nl::Protocols::Genl::Message
943
+ TYPE = 14
944
+ FIXED_HEADER = nil
945
+ ATTRIBUTE_SET = AttributeSets::ExpkeyReqs
946
+ ATTRIBUTES = Ractor.make_shareable(%i[requests])
947
+ # Gets the value of `requests` attribute in the message.
948
+ #--
949
+ # @rbs return: AttributeSets::Expkey
950
+ def requests; attributes[:"requests"]&.value; end
951
+ end
952
+ # Flush nfsd caches (svc_export and/or expkey)
953
+ class DoCacheFlushRequest < ::Nl::Protocols::Genl::Message
954
+ TYPE = 15
955
+ FIXED_HEADER = nil
956
+ ATTRIBUTE_SET = AttributeSets::CacheFlush
957
+ ATTRIBUTES = Ractor.make_shareable(%i[mask])
958
+ # Gets the value of `mask` attribute in the message.
959
+ #--
960
+ # @rbs return: ::Integer
961
+ def mask; attributes[:"mask"]&.value; end
962
+ end
963
+ # release NLM locks held by an IP address
964
+ class DoUnlockIpRequest < ::Nl::Protocols::Genl::Message
965
+ TYPE = 16
966
+ FIXED_HEADER = nil
967
+ ATTRIBUTE_SET = AttributeSets::UnlockIp
968
+ ATTRIBUTES = Ractor.make_shareable(%i[address])
969
+ # Gets the value of `address` attribute in the message.
970
+ #--
971
+ # @rbs return: untyped
972
+ def address; attributes[:"address"]&.value; end
973
+ end
974
+ # revoke NFS state under a filesystem path
975
+ class DoUnlockFilesystemRequest < ::Nl::Protocols::Genl::Message
976
+ TYPE = 17
977
+ FIXED_HEADER = nil
978
+ ATTRIBUTE_SET = AttributeSets::UnlockFilesystem
979
+ ATTRIBUTES = Ractor.make_shareable(%i[path])
980
+ # Gets the value of `path` attribute in the message.
981
+ #--
982
+ # @rbs return: ::String
983
+ def path; attributes[:"path"]&.value; end
984
+ end
985
+ # Revoke NFSv4 state acquired through exports of a given path. Unlike unlock-filesystem, which operates at superblock granularity, this command targets only state associated with a specific export path. Userspace (exportfs -u) sends this after removing the last client for a path so the underlying filesystem can be unmounted.
986
+ class DoUnlockExportRequest < ::Nl::Protocols::Genl::Message
987
+ TYPE = 18
988
+ FIXED_HEADER = nil
989
+ ATTRIBUTE_SET = AttributeSets::UnlockExport
990
+ ATTRIBUTES = Ractor.make_shareable(%i[path])
991
+ # Gets the value of `path` attribute in the message.
992
+ #--
993
+ # @rbs return: ::String
994
+ def path; attributes[:"path"]&.value; end
995
+ end
474
996
  end
475
- # set the number of running threads
997
+ # set the maximum number of running threads
476
998
  #--
477
- # @rbs (?threads: ::Integer, ?gracetime: ::Integer, ?leasetime: ::Integer, ?scope: ::String) -> void
999
+ # @rbs (?threads: ::Integer, ?gracetime: ::Integer, ?leasetime: ::Integer, ?scope: ::String, ?min_threads: ::Integer, ?fh_key: untyped) -> void
478
1000
  def do_threads_set(**args)
479
1001
  exchange_message(:"do", Messages::DoThreadsSetRequest, nil, args)
480
1002
  end
@@ -496,5 +1018,41 @@ class Nfsd < ::Nl::Family
496
1018
  def do_pool_mode_set(**args)
497
1019
  exchange_message(:"do", Messages::DoPoolModeSetRequest, nil, args)
498
1020
  end
1021
+ # Respond to one or more svc_export requests
1022
+ #--
1023
+ # @rbs (?requests: AttributeSets::SvcExport) -> void
1024
+ def do_svc_export_set_reqs(**args)
1025
+ exchange_message(:"do", Messages::DoSvcExportSetReqsRequest, nil, args)
1026
+ end
1027
+ # Respond to one or more expkey requests
1028
+ #--
1029
+ # @rbs (?requests: AttributeSets::Expkey) -> void
1030
+ def do_expkey_set_reqs(**args)
1031
+ exchange_message(:"do", Messages::DoExpkeySetReqsRequest, nil, args)
1032
+ end
1033
+ # Flush nfsd caches (svc_export and/or expkey)
1034
+ #--
1035
+ # @rbs (?mask: ::Integer) -> void
1036
+ def do_cache_flush(**args)
1037
+ exchange_message(:"do", Messages::DoCacheFlushRequest, nil, args)
1038
+ end
1039
+ # release NLM locks held by an IP address
1040
+ #--
1041
+ # @rbs (?address: untyped) -> void
1042
+ def do_unlock_ip(**args)
1043
+ exchange_message(:"do", Messages::DoUnlockIpRequest, nil, args)
1044
+ end
1045
+ # revoke NFS state under a filesystem path
1046
+ #--
1047
+ # @rbs (?path: ::String) -> void
1048
+ def do_unlock_filesystem(**args)
1049
+ exchange_message(:"do", Messages::DoUnlockFilesystemRequest, nil, args)
1050
+ end
1051
+ # Revoke NFSv4 state acquired through exports of a given path. Unlike unlock-filesystem, which operates at superblock granularity, this command targets only state associated with a specific export path. Userspace (exportfs -u) sends this after removing the last client for a path so the underlying filesystem can be unmounted.
1052
+ #--
1053
+ # @rbs (?path: ::String) -> void
1054
+ def do_unlock_export(**args)
1055
+ exchange_message(:"do", Messages::DoUnlockExportRequest, nil, args)
1056
+ end
499
1057
  end
500
1058
  end; end