-
Notifications
You must be signed in to change notification settings - Fork 20
/
tr-140-1-0-2.xml
1209 lines (1199 loc) · 60.7 KB
/
tr-140-1-0-2.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
<?xml version="1.0" encoding="UTF-8"?>
<!--
TR-069 Device:1.2 Root Object errata and clarifications
Copyright (c) 2010-2017, Broadband Forum
Redistribution and use in source and binary forms, with or
without modification, are permitted provided that the following
conditions are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following
disclaimer in the documentation and/or other materials
provided with the distribution.
3. Neither the name of the copyright holder nor the names of its
contributors may be used to endorse or promote products
derived from this software without specific prior written
permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
The above license is used as a license under copyright only.
Please reference the Forum IPR Policy for patent licensing terms
<https://www.broadband-forum.org/ipr-policy>.
Any moral rights which are necessary to exercise under the above
license grant are also deemed granted under this license.
Summary:
TR-140 StorageService: 1.0 Service Object.
-->
<dm:document xmlns:dm="urn:broadband-forum-org:cwmp:datamodel-1-1"
xmlns:dmr="urn:broadband-forum-org:cwmp:datamodel-report-0-1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="urn:broadband-forum-org:cwmp:datamodel-1-1 cwmp-datamodel-1-1.xsd
urn:broadband-forum-org:cwmp:datamodel-report-0-1 cwmp-datamodel-report.xsd"
spec="urn:broadband-forum-org:tr-140-1-0-2">
<import file="tr-069-biblio.xml" spec="urn:broadband-forum-org:tr-069-biblio"/>
<import file="tr-106-1-0-0-types.xml" spec="urn:broadband-forum-org:tr-106-1-0">
<dataType name="IPAddress"/>
<dataType name="MACAddress"/>
</import>
<model name="StorageService:1.0" isService="true">
<object name="StorageService.{i}." access="readOnly" minEntries="0" maxEntries="unbounded">
<description>The Service Object for a Storage Service device.</description>
<parameter name="Enable" access="readWrite">
<description>Enables or Disables the entire Storage mechanism.</description>
<syntax>
<boolean/>
</syntax>
</parameter>
<parameter name="PhysicalMediumNumberOfEntries" access="readOnly">
<description>The number of instances of {{object|.PhysicalMedium.{i}.}}.</description>
<syntax>
<unsignedInt/>
</syntax>
</parameter>
<parameter name="StorageArrayNumberOfEntries" access="readOnly">
<description>The number of instances of {{object|.StorageArray.{i}.}}.</description>
<syntax>
<unsignedInt/>
</syntax>
</parameter>
<parameter name="LogicalVolumeNumberOfEntries" access="readOnly">
<description>The number of instances of {{object|.LogicalVolume.{i}.}}.</description>
<syntax>
<unsignedInt/>
</syntax>
</parameter>
<parameter name="UserAccountNumberOfEntries" access="readOnly">
<description>The number of instances of {{object|.UserAccount.{i}.}}.</description>
<syntax>
<unsignedInt/>
</syntax>
</parameter>
<parameter name="UserGroupNumberOfEntries" access="readOnly">
<description>The number of instances of {{object|.UserGroup.{i}.}}.</description>
<syntax>
<unsignedInt/>
</syntax>
</parameter>
</object>
<object name="StorageService.{i}.Capabilities." access="readOnly" minEntries="1" maxEntries="1">
<description>The overall capabilities of a Storage Service device. This is a constant read-only object, meaning that only a firmware upgrade will cause these values to be altered.
Note that when TR-140 was originally published there was a typo in this object name, which has been corrected.
</description>
<parameter name="FTPCapable" access="readOnly">
<description>Does this device contain an FTP server allowing clients to access the data via an FTP client?</description>
<syntax>
<boolean/>
</syntax>
</parameter>
<parameter name="SFTPCapable" access="readOnly">
<description>Does this device contain an SSH FTP server allowing clients to access the data via an SFTP client?</description>
<syntax>
<boolean/>
</syntax>
</parameter>
<parameter name="HTTPCapable" access="readOnly">
<description>Does this device contain an HTTP server allowing clients to access the data via an HTTP client?</description>
<syntax>
<boolean/>
</syntax>
</parameter>
<parameter name="HTTPSCapable" access="readOnly">
<description>Does this device contain an HTTPS server allowing clients to access the data via an HTTPS client?</description>
<syntax>
<boolean/>
</syntax>
</parameter>
<parameter name="HTTPWritable" access="readOnly">
<description>Does this device contain an HTTP server that supports creating files via an HTTP PUT/POST mechanism that would allow an HTTP client to upload files via HTTP? This is also sometimes referred to as "WebDAV" support.</description>
<syntax>
<boolean/>
</syntax>
</parameter>
<parameter name="SupportedNetworkProtocols" access="readOnly">
<description>{{list}} Supported application-level network protocols. {{enum}}
The list MAY include vendor-specific protocols, which MUST be in the format defined in {{bibref|TR-106}}. For example: "X_EXAMPLE-COM_MyProt. </description>
<syntax>
<list/>
<string>
<enumeration value="SMB"/>
<enumeration value="NFS"/>
<enumeration value="AFP"/>
</string>
</syntax>
</parameter>
<parameter name="SupportedFileSystemTypes" access="readOnly">
<description>{{list}} Supported FileSystems Types. {{enum}}
The list MAY include vendor-specific protocols, which MUST be in the format defined in {{bibref|TR-106}}. For example: "X_EXAMPLE-COM_MyType. </description>
<syntax>
<list/>
<string>
<enumeration value="FAT16"/>
<enumeration value="FAT32"/>
<enumeration value="NTFS"/>
<enumeration value="HFS"/>
<enumeration value="HFS+"/>
<enumeration value="HSFJ"/>
<enumeration value="ext2"/>
<enumeration value="ext3"/>
<enumeration value="XFS"/>
<enumeration value="REISER"/>
</string>
</syntax>
</parameter>
<parameter name="SupportedRaidTypes" access="readOnly">
<description>{{list}} Supported RAID types. {{enum}}
The list MAY include vendor-specific protocols, which MUST be in the format defined in {{bibref|TR-106}}. For example:"X_EXAMPLE-COM_MyRaid.
</description>
<syntax>
<list/>
<string>
<enumeration value="RAID0"/>
<enumeration value="RAID1"/>
<enumeration value="RAID2"/>
<enumeration value="RAID3"/>
<enumeration value="RAID4"/>
<enumeration value="RAID5"/>
<enumeration value="RAID6"/>
<enumeration value="RAID10"/>
<enumeration value="RAID0+1"/>
<enumeration value="RAID30"/>
<enumeration value="RAID50"/>
<enumeration value="RAID60"/>
</string>
</syntax>
</parameter>
<parameter name="VolumeEncryptionCapable" access="readOnly">
<description>Does this device have the ability to encrypt and decrypt Logical Volumes as they are stored and retrieved?</description>
<syntax>
<boolean/>
</syntax>
</parameter>
</object>
<object name="StorageService.{i}.NetInfo." access="readOnly" minEntries="1" maxEntries="1">
<description>This object provides general LAN network information about this device.</description>
<parameter name="HostName" access="readWrite">
<description>Logical name which identifies the device on the local network. This is the first segment of a fully qualified domain name (FQDN). Combining {{param}}, a "." and the {{param|DomainName}} will result in a fully qualified domain name.</description>
<syntax>
<string>
<size maxLength="64"/>
</string>
</syntax>
</parameter>
<parameter name="DomainName" access="readWrite">
<description>Domain name for the device on the local network. Combining {{param|HostName}}, a "." and {{param}} will result in a fully qualified domain name (FQDN). For example, if the HostName contains "myLaptop" and the DomainName contains "dsl.sp1.com", then the FQDN would be "myLaptop.dsl.sp1.com".</description>
<syntax>
<string>
<size maxLength="255"/>
</string>
</syntax>
</parameter>
</object>
<object name="StorageService.{i}.UserGroup.{i}." access="readWrite" minEntries="0" maxEntries="unbounded" numEntriesParameter="UserGroupNumberOfEntries" enableParameter="Enable" >
<description>This object provides information about each user group configured on this device, which allows the grouping of user accounts for easier maintenance of permissions.</description>
<uniqueKey>
<parameter ref="GroupName"></parameter>
</uniqueKey>
<parameter name="Enable" access="readWrite">
<description>Enables or disables this group.</description>
<syntax>
<boolean/>
<default type="object" value="false"/>
</syntax>
</parameter>
<parameter name="GroupName" access="readWrite">
<description>The unique name of the group.</description>
<syntax>
<string>
<size maxLength="64"/>
</string>
<default type="object" value=""/>
</syntax>
</parameter>
</object>
<object name="StorageService.{i}.UserAccount.{i}." access="readWrite" minEntries="0" maxEntries="unbounded" numEntriesParameter="UserAccountNumberOfEntries" enableParameter="Enable">
<description>This object provides information about each user configured on this device, which provides a means for controlling access to the device.</description>
<uniqueKey>
<parameter ref="Username"></parameter>
</uniqueKey>
<parameter name="Enable" access="readWrite">
<description>Enables or disables this user.</description>
<syntax>
<boolean/>
<default type="object" value="false"/>
</syntax>
</parameter>
<parameter name="Username" access="readWrite">
<description>The unique name of the user. Also used for authentication.</description>
<syntax>
<string>
<size maxLength="64"/>
</string>
<default type="object" value=""/>
</syntax>
</parameter>
<parameter name="Password" access="readWrite">
<description>Password used to authenticate the user when connecting to the Storage Service Device.</description>
<syntax hidden="true">
<string>
<size maxLength="64"/>
</string>
</syntax>
</parameter>
<parameter name="UserGroupParticipation" access="readWrite">
<description>Represents a User Group that this User Account is a member of. Each {{object|.UserGroup.{i}.}} referenced by this parameter MUST exist within the same StorageService instance.</description>
<syntax>
<list>
<size maxLength="1024"/>
</list>
<string>
<pathRef targetParent=".UserGroup." targetType="row" refType="strong"></pathRef>
</string>
<default type="object" value=""></default>
</syntax>
</parameter>
<parameter name="AllowFTPAccess" access="readWrite">
<description>Enables or disables access via FTP (including SSH FTP access) for this user.</description>
<syntax>
<boolean/>
<default type="object" value="false"/>
</syntax>
</parameter>
<parameter name="AllowHTTPAccess" access="readWrite">
<description>Enables or disables access via HTTP (including HTTPS access) for this user.</description>
<syntax>
<boolean/>
<default type="object" value="false"/>
</syntax>
</parameter>
</object>
<object name="StorageService.{i}.NetworkServer." access="readOnly" minEntries="1" maxEntries="1">
<description>This object allows the control of network layer protocols authorization enforcement.</description>
<parameter name="AFPEnable" access="readWrite">
<description>Enables or disables the AFP network protocol.</description>
<syntax>
<boolean/>
</syntax>
</parameter>
<parameter name="NFSEnable" access="readWrite">
<description>Enables or disables the NFS network protocol.</description>
<syntax>
<boolean/>
</syntax>
</parameter>
<parameter name="SMBEnable" access="readWrite">
<description>Enables or disables the SMB network protocol.</description>
<syntax>
<boolean/>
</syntax>
</parameter>
<parameter name="NetworkProtocolAuthReq" access="readWrite">
<description>If this parameter is set to {{false}} then the device MUST NOT attempt to request login credentials or authenticate access from network layer protocols such as AFP, NFS, and SMB. If this parameter is set to {{true}} then the device MUST attempt to request login credentials or authenticate access from network layer protocols such as AFP, NFS, and SMB by using an instance of {{object|.UserAccount.{i}.}} found on this device.</description>
<syntax>
<boolean/>
</syntax>
</parameter>
</object>
<object name="StorageService.{i}.FTPServer." access="readOnly" minEntries="1" maxEntries="1">
<description>This object allows the configuration of the FTP server.</description>
<parameter name="Enable" access="readWrite">
<description>Enables or disables the FTP server.</description>
<syntax>
<boolean/>
</syntax>
</parameter>
<parameter name="Status" access="readOnly">
<description>The current status of this FTP server.</description>
<syntax>
<string>
<enumeration value="Enabled"/>
<enumeration value="Disabled"/>
<enumeration value="Error"/>
</string>
</syntax>
</parameter>
<parameter name="MaxNumUsers" access="readWrite">
<description>Maximum number of users allowed to log in to the device at once via FTP.</description>
<syntax>
<unsignedInt>
<range minInclusive="1" maxInclusive="32"/>
</unsignedInt>
</syntax>
</parameter>
<parameter name="IdleTime" access="readWrite">
<description>Maximum amount of time in {{units}} that the FTP socket will remain open without any activity. If set to 0 an infinite timeout will apply.</description>
<syntax>
<unsignedInt>
<range minInclusive="0" maxInclusive="600"/>
<units value="seconds"></units>
</unsignedInt>
</syntax>
</parameter>
<parameter name="PortNumber" access="readWrite">
<description>The port number that the FTP server is listening on.</description>
<syntax>
<unsignedInt>
<range minInclusive="0" maxInclusive="65535"/>
</unsignedInt>
<default type="factory" value="21"></default>
</syntax>
</parameter>
</object>
<object name="StorageService.{i}.FTPServer.AnonymousUser." access="readOnly" minEntries="1" maxEntries="1">
<description>This object allows the configuration of anonymous FTP access.</description>
<parameter name="Enable" access="readWrite">
<description>Enables or disables support for anonymous access into the FTP server</description>
<syntax>
<boolean/>
</syntax>
</parameter>
<parameter name="StartingFolder" access="readWrite">
<description>Represents the home directory for anonymous FTP access. The {{object|.LogicalVolume.{i}.Folder.{i}.}} referenced by this parameter MUST exist within the same StorageService instance.</description>
<syntax>
<string>
<size maxLength="256"/>
<pathRef targetParent=".LogicalVolume.{i}.Folder." targetType="row" refType="weak"></pathRef>
</string>
</syntax>
</parameter>
<parameter name="ReadOnlyAccess" access="readWrite">
<description>If this is set to {{true}}, then the anonymous user is limited to only retrieval of files from the Storage Service (no deletions, copies, creations or uploads). If this is set to {{false}}, then the anonymous user has full permissions within the folder specified in {{param|StartingFolder}}. This SHOULD default to True.</description>
<syntax>
<boolean/>
</syntax>
</parameter>
</object>
<object name="StorageService.{i}.SFTPServer." access="readOnly" minEntries="1" maxEntries="1">
<description>This object allows the configuration of the SSH FTP server.</description>
<parameter name="Enable" access="readWrite">
<description>Enables or disables the SSH FTP server.</description>
<syntax>
<boolean/>
</syntax>
</parameter>
<parameter name="Status" access="readOnly">
<description>The current status of this SSH FTP server. </description>
<syntax>
<string>
<enumeration value="Enabled"/>
<enumeration value="Disabled"/>
<enumeration value="Error"/>
</string>
</syntax>
</parameter>
<parameter name="MaxNumUsers" access="readWrite">
<description>Maximum number of users allowed to log in to the device at once via SFTP.</description>
<syntax>
<unsignedInt>
<range minInclusive="1" maxInclusive="32"/>
</unsignedInt>
</syntax>
</parameter>
<parameter name="IdleTime" access="readWrite">
<description>Maximum amount of time in {{units}} that the SFTP socket will remain open without any activity. If set to 0 an infinite timeout will apply.</description>
<syntax>
<unsignedInt>
<range minInclusive="0" maxInclusive="600"/>
<units value="seconds"></units>
</unsignedInt>
</syntax>
</parameter>
<parameter name="PortNumber" access="readWrite">
<description>The port number that the SSH FTP server is listening on. </description>
<syntax>
<unsignedInt>
<range minInclusive="0" maxInclusive="65535"/>
</unsignedInt>
<default type="factory" value="115"></default>
</syntax>
</parameter>
</object>
<object name="StorageService.{i}.HTTPServer." access="readOnly" minEntries="1" maxEntries="1">
<description>This object allows the configuration of the HTTP server.</description>
<parameter name="Enable" access="readWrite">
<description>Enables or disables the HTTP server.</description>
<syntax>
<boolean/>
</syntax>
</parameter>
<parameter name="Status" access="readOnly">
<description>The current status of this HTTP server. </description>
<syntax>
<string>
<enumeration value="Enabled"/>
<enumeration value="Disabled"/>
<enumeration value="Error"/>
</string>
</syntax>
</parameter>
<parameter name="MaxNumUsers" access="readWrite">
<description>Maximum number of users allowed to log in to the device at once via HTTP.</description>
<syntax>
<unsignedInt>
<range minInclusive="1" maxInclusive="32"/>
</unsignedInt>
</syntax>
</parameter>
<parameter name="IdleTime" access="readWrite">
<description>Maximum amount of time in {{units}} that the HTTP socket will remain open without any activity. If set to 0 an infinite timeout will apply.</description>
<syntax>
<unsignedInt>
<range minInclusive="0" maxInclusive="600"/>
<units value="seconds"></units>
</unsignedInt>
</syntax>
</parameter>
<parameter name="HTTPWritingEnabled" access="readOnly">
<description>Is support for the HTTP PUT/POST mechanism (WebDAV) enabled?</description>
<syntax>
<boolean/>
</syntax>
</parameter>
<parameter name="PortNumber" access="readWrite">
<description>The port number that the HTTP server is listening on. </description>
<syntax>
<unsignedInt>
<range minInclusive="0" maxInclusive="65535"/>
</unsignedInt>
<default type="factory" value="80"></default>
</syntax>
</parameter>
<parameter name="AuthenticationReq" access="readWrite">
<description>If {{true}}, HTTP will require login prior to access (basic or digest authentication).</description>
<syntax>
<boolean/>
</syntax>
</parameter>
</object>
<object name="StorageService.{i}.HTTPSServer." access="readOnly" minEntries="1" maxEntries="1">
<description>This object allows the configuration of the HTTPS server.</description>
<parameter name="Enable" access="readWrite">
<description>Enables or disables the HTTPS server.</description>
<syntax>
<boolean/>
</syntax>
</parameter>
<parameter name="Status" access="readOnly">
<description>The current status of this HTTPS server. </description>
<syntax>
<string>
<enumeration value="Enabled"/>
<enumeration value="Disabled"/>
<enumeration value="Error"/>
</string>
</syntax>
</parameter>
<parameter name="MaxNumUsers" access="readWrite">
<description>Maximum number of users allowed to log in to the device at once via HTTPS.</description>
<syntax>
<unsignedInt>
<range minInclusive="1" maxInclusive="32"/>
</unsignedInt>
</syntax>
</parameter>
<parameter name="IdleTime" access="readWrite">
<description>Maximum amount of time in {{units}} that the HTTPS socket will remain open without any activity. If set to 0 an infinite timeout will apply.</description>
<syntax>
<unsignedInt>
<range minInclusive="0" maxInclusive="600"/>
<units value="seconds"></units>
</unsignedInt>
</syntax>
</parameter>
<parameter name="HTTPWritingEnabled" access="readOnly">
<description>Is support for the HTTP PUT/POST mechanism (WebDAV) enabled?</description>
<syntax>
<boolean/>
</syntax>
</parameter>
<parameter name="PortNumber" access="readWrite">
<description>The port number that the HTTPS server is listening on. </description>
<syntax>
<unsignedInt>
<range minInclusive="0" maxInclusive="65535"/>
</unsignedInt>
<default type="factory" value="443"></default>
</syntax>
</parameter>
<parameter name="AuthenticationReq" access="readWrite">
<description>If {{true}}, HTTPS will require login prior to access (basic or digest authentication).</description>
<syntax>
<boolean/>
</syntax>
</parameter>
</object>
<object name="StorageService.{i}.PhysicalMedium.{i}." access="readOnly" minEntries="0" maxEntries="unbounded" numEntriesParameter="PhysicalMediumNumberOfEntries">
<description>This object provides information about each physical medium connected to this device.</description>
<uniqueKey>
<parameter ref="Name"></parameter>
</uniqueKey>
<uniqueKey>
<parameter ref="Vendor"></parameter>
<parameter ref="Model"></parameter>
<parameter ref="SerialNumber"></parameter>
</uniqueKey>
<parameter name="Name" access="readWrite">
<description>A user-friendly name for this physical storage medium.</description>
<syntax>
<string>
<size maxLength="64"/>
</string>
</syntax>
</parameter>
<parameter name="Vendor" access="readOnly">
<description>The vendor of this physical storage medium.</description>
<syntax>
<string>
<size maxLength="64"/>
</string>
</syntax>
</parameter>
<parameter name="Model" access="readOnly">
<description>The model name/number of this physical storage medium.</description>
<syntax>
<string>
<size maxLength="128"/>
</string>
</syntax>
</parameter>
<parameter name="SerialNumber" access="readOnly">
<description>The serial number of this physical storage medium.</description>
<syntax>
<string>
<size maxLength="64"/>
</string>
</syntax>
</parameter>
<parameter name="FirmwareVersion" access="readOnly">
<description>The firmware version for firmware contained within the physical medium's controller.</description>
<syntax>
<string>
<size maxLength="64"/>
</string>
</syntax>
</parameter>
<parameter name="ConnectionType" access="readOnly">
<description>The method of connection to this storage device. {{enum}}
The parameter MAY instead be a vendor-specific connection type, which MUST be in the format defined in {{bibref|TR-106}}. For example:
"X_EXAMPLE-COM_MyConnType"
</description>
<syntax>
<string>
<enumeration value="USB 1.1"></enumeration>
<enumeration value="USB 2.0"></enumeration>
<enumeration value="IEEE1394"></enumeration>
<enumeration value="IEEE1394b"></enumeration>
<enumeration value="IDE"></enumeration>
<enumeration value="EIDE"></enumeration>
<enumeration value="ATA/33"></enumeration>
<enumeration value="ATA/66"></enumeration>
<enumeration value="ATA/100"></enumeration>
<enumeration value="ATA/133"></enumeration>
<enumeration value="SATA/150"></enumeration>
<enumeration value="SATA/300"></enumeration>
<enumeration value="SCSI-1"></enumeration>
<enumeration value="Fast SCSI"></enumeration>
<enumeration value="Fast-Wide SCSI"></enumeration>
<enumeration value="Ultra SCSI"></enumeration>
<enumeration value="Ultra Wide SCSI"></enumeration>
<enumeration value="Ultra2 SCSI"></enumeration>
<enumeration value="Ultra2 Wide SCSI"></enumeration>
<enumeration value="Ultra3 SCSI"></enumeration>
<enumeration value="Ultra-320 SCSI"></enumeration>
<enumeration value="Ultra-640 SCSI"></enumeration>
<enumeration value="SSA"></enumeration>
<enumeration value="SSA-40"></enumeration>
<enumeration value="Fibre Channel"></enumeration>
</string>
</syntax>
</parameter>
<parameter name="Removable" access="readOnly">
<description>Is this physical storage medium removable? Removable storage implies that the removal action is part of normal operations and is expected to leave the data on the removable storage intact.</description>
<syntax>
<boolean/>
</syntax>
</parameter>
<parameter name="Capacity" access="readOnly">
<description>The formatted capacity of the physical storage medium in {{units}}.</description>
<syntax>
<unsignedInt>
<units value="MB"></units>
</unsignedInt>
</syntax>
</parameter>
<parameter name="Status" access="readOnly">
<description>The general activity status of this physical storage medium. </description>
<syntax>
<string>
<enumeration value="Online"/>
<enumeration value="Standby"/>
<enumeration value="Offline"/>
</string>
</syntax>
</parameter>
<parameter name="Uptime" access="readOnly" activeNotify="canDeny">
<description>Time since boot in {{units}}. This MAY reflect S.M.A.R.T. PowerOnHours.</description>
<syntax>
<unsignedInt>
<units value="hours"></units>
</unsignedInt>
</syntax>
</parameter>
<parameter name="SMARTCapable" access="readOnly">
<description>Is this physical medium capable of reporting S.M.A.R.T. statistics?</description>
<syntax>
<boolean/>
</syntax>
</parameter>
<parameter name="Health" access="readOnly">
<description>The general health of this physical storage medium. {{enum}}
Note: Health MAY be obtained from S.M.A.R.T. data where available.</description>
<syntax>
<string>
<enumeration value="OK"></enumeration>
<enumeration value="Failing"></enumeration>
<enumeration value="Error"></enumeration>
</string>
</syntax>
</parameter>
<parameter name="HotSwappable" access="readOnly">
<description>Is this physical medium capable of being removed while the device is powered up? Hot-Swappable storage does not imply Removable storage; hot-swappable is an operation taken only when the disk has failed and needs to be replaced. The data on the hot-swapped storage will not remain intact.</description>
<syntax>
<boolean/>
</syntax>
</parameter>
</object>
<object name="StorageService.{i}.StorageArray.{i}." access="readWrite" minEntries="0" maxEntries="unbounded" numEntriesParameter="StorageArrayNumberOfEntries" enableParameter="Enable">
<description>This object provides information about each storage array (RAID) configured on this device.
Creating an instance of this object generates a disabled {{object}} instance. Before this new {{object}} instance can be enabled (via a SetParameterValues command), it MUST have the following parameters configured: {{param|Name}}, {{param|RaidType}}, and {{param|PhysicalMediumReference}}. Once an instance is enabled the following parameters become immutable for the life of the instance: {{param|Name}}, {{param|RaidType}}, and {{param|PhysicalMediumReference}}.</description>
<uniqueKey>
<parameter ref="PhysicalMediumReference"></parameter>
</uniqueKey>
<parameter name="Name" access="readWrite">
<description>A user-friendly name for this Storage Array.
Once this instance becomes enabled, this parameter will be immutable for the life of the instance.</description>
<syntax>
<string>
<size maxLength="64"/>
</string>
<default type="object" value=""/>
</syntax>
</parameter>
<parameter name="Status" access="readOnly">
<description>The current status of this StorageArray.</description>
<syntax>
<string>
<enumeration value="Rebuilding"><description>Indicates a drive participating in an array is replaced, while the data striping and/or redundancy of the array are reestablished on the new disk. In this state, data operations to the array will function properly, but its performance could be significantly diminished.</description></enumeration>
<enumeration value="Initializing"><description>The state when the RAID array is being first constructed, and the data striping and/or redundancy of the array are first being established. In this state, data operations to the array will function properly, but its performance could be significantly diminished and the redundancy might not be fully established.</description></enumeration>
<enumeration value="Offline"><description>Indicates the RAID array is not available. This might occur because the administrator explicitly has disabled the array, or because underlying elements of the array, such as the physical disks, are not ready.</description></enumeration>
<enumeration value="Online"><description>Indicates the RAID array is fully operational.</description></enumeration>
<enumeration value="Error"><description>Indicates an error condition exists within the RAID array. In this state, data operations to the array are not possible, and data loss might have occurred.</description></enumeration>
<enumeration value="Degraded"><description>Indicates the loss of a drive only in a Raid Type of more than 2 drives, that can support multiple failures. Data redundancy continues to be available but with degraded capability.</description></enumeration>
<enumeration value="Critical"><description>Indicates the loss of data redundancy, and a possible degraded state. The array continues to perform read/write operations.</description></enumeration>
</string>
<default type="object" value="Offline"/>
</syntax>
</parameter>
<parameter name="Enable" access="readWrite">
<description>Enables or disables this StorageArray instance.</description>
<syntax>
<boolean/>
<default type="object" value="false"/>
</syntax>
</parameter>
<parameter name="RaidType" access="readWrite">
<description>
Note that after creation of the Storage Array, any subsequent writes to this parameter MUST be ignored as array type migration is not supported. To identify which RAID Types are supported, see {{param|.Capabilities.SupportedRaidTypes}}.
Once this instance becomes enabled, this parameter will be immutable for the life of the instance.</description>
<syntax>
<string>
<enumerationRef targetParam=".Capabilities.SupportedRaidTypes"></enumerationRef>
</string>
<default type="object" value="Linear"/>
</syntax>
</parameter>
<parameter name="UsableCapacity" access="readOnly">
<description>The total Usable Capacity of the Storage Array in {{units}}. This is computed by the system based on {{param|PhysicalMediumReference}} and {{param|RaidType}}. Disk size is a consideration, as many RAID Types use the smallest drive in the group for calculations.</description>
<syntax>
<unsignedInt>
<units value="MB"></units>
</unsignedInt>
</syntax>
</parameter>
<parameter name="PhysicalMediumReference" access="readWrite">
<description>
Represents the physical medium used by this RAID. Each Physical Medium referenced by this parameter MUST exist within the same StorageService instance. A {{object|.PhysicalMedium.{i}.}} MUST only be referenced by one {{object|.StorageArray.{i}.}} instance.
Once this instance becomes enabled, this parameter will be immutable for the life of the instance.
</description>
<syntax>
<list>
<size maxLength="1024"/>
</list>
<string>
<pathRef targetParent=".PhysicalMedium." targetType="row" refType="weak"></pathRef>
</string>
</syntax>
</parameter>
</object>
<object name="StorageService.{i}.LogicalVolume.{i}." access="readWrite" minEntries="0" maxEntries="unbounded" numEntriesParameter="LogicalVolumeNumberOfEntries" enableParameter="Enable">
<description>This object provides information about each logical volume configured on this device. A logical volume can reside either on an instance of a single {{object|.PhysicalMedium.{i}.}} or on an instance of a single {{object|.StorageArray.{i}.}} instance, but it can not span multiple instances of either. {{param|PhysicalReference}} is used to define where this {{object}} instance resides.
Creating an instance of this object generates a disabled {{object}} instance. Before this new {{object}} instance can be enabled (via a SetParameterValues command), it MUST have the following parameters configured: {{param|Name}}, {{param|PhysicalReference}}, and {{param|Capacity}}. Once an instance is enabled the following parameters become immutable for the life of the instance: {{param|Name}}, {{param|PhysicalReference}}, and {{param|Capacity}}.</description>
<uniqueKey>
<parameter ref="Name"></parameter>
</uniqueKey>
<parameter name="Name" access="readWrite">
<description>The name of the partition for this logical volume.
Once this instance becomes enabled, this parameter will be immutable for the life of the instance. This parameter acts as the unique identifier for the instance, thus the device MUST NOT allow multiple {{object}} instances to use the same {{param}}.</description>
<syntax>
<string>
<size maxLength="64"/>
</string>
<default type="object" value=""/>
</syntax>
</parameter>
<parameter name="Status" access="readOnly">
<description>The current status of this Logical Volume. {{enum}}
The default {{enum|Offline}} status will exist until this {{object}} is enabled.</description>
<syntax>
<string>
<enumeration value="Offline"/>
<enumeration value="Online"/>
<enumeration value="Error"/>
</string>
<default type="object" value="Offline"/>
</syntax>
</parameter>
<parameter name="Enable" access="readWrite">
<description>Enables or disables this {{object}} instance.</description>
<syntax>
<boolean/>
<default type="object" value="false"/>
</syntax>
</parameter>
<parameter name="PhysicalReference" access="readWrite">
<description>
Represents the physical medium or RAID where this {{object}} resides. The {{object|.PhysicalMedium.{i}.}} or {{object|.StorageArray.{i}.}} referenced by this parameter MUST exist within the same StorageService instance.
An AddObject followed by an enabling SetParameterValues on {{param|Name}}, {{param}}, and {{param|Capacity}} will cause the formatting of this logical partition and these parameters to become immutable for the life of this instance.</description>
<syntax>
<string>
<size maxLength="256"/>
<pathRef targetParent=".PhysicalMedium. .StorageArray." targetType="row" refType="weak"></pathRef>
</string>
</syntax>
</parameter>
<parameter name="FileSystem" access="readOnly">
<description>The file system for this {{object}} as it is currently formatted.</description>
<syntax>
<string>
<enumerationRef targetParam=".Capabilities.SupportedFileSystemTypes"></enumerationRef>
</string>
</syntax>
</parameter>
<parameter name="Capacity" access="readWrite">
<description>The Capacity of the Logical Volume in {{units}}.
Once this instance becomes enabled, this parameter will be immutable for the life of the instance.</description>
<syntax>
<unsignedInt>
<units value="MB"></units>
</unsignedInt>
</syntax>
</parameter>
<parameter name="UsedSpace" access="readOnly" activeNotify="canDeny">
<description>The Amount of Used Space on the Logical Volume in {{units}}.</description>
<syntax>
<unsignedInt>
<units value="MB"></units>
</unsignedInt>
</syntax>
</parameter>
<parameter name="ThresholdLimit" access="readWrite">
<description>This value is specified in {{units}} and controls when {{param|ThresholdReached}} will have its value altered. If the value of {{param|UsedSpace}} plus the value of {{param}}r is greater than or equal to the value of {{param|Capacity}} then the value of {{param|ThresholdReached}} will be {{true}}, otherwise it will be {{false}}. Setting the value of this parameter to 0 will disable the Thresholding mechanism.</description>
<syntax>
<unsignedInt>
<units value="MB"></units>
</unsignedInt>
<default type="object" value="0"/>
</syntax>
</parameter>
<parameter name="ThresholdReached" access="readOnly">
<description>When {{param|ThresholdLimit}} > 0 and {{param|UsedSpace}} + {{param|ThresholdLimit}} >= {{param|Capacity}} this will be {{true}}, else {{false}}.</description>
<syntax>
<boolean/>
<default type="object" value="false"/>
</syntax>
</parameter>
<parameter name="Encrypted" access="readOnly">
<description>Is the Volume Encrypted? The type of encryption will be handled by the device internally and is not a matter for remote management.</description>
<syntax>
<boolean/>
</syntax>
</parameter>
<parameter name="FolderNumberOfEntries" access="readOnly">
<description>The number of instances of {{object|.LogicalVolume.{i}.Folder.{i}.}} on this {{object}}.</description>
<syntax>
<unsignedInt/>
</syntax>
</parameter>
</object>
<object name="StorageService.{i}.LogicalVolume.{i}.Folder.{i}." access="readWrite" minEntries="0" maxEntries="unbounded" numEntriesParameter="FolderNumberOfEntries" enableParameter="Enable">
<description>This object provides information about each top-level folder configured on this logical volume. Each top-level folder allows the configuration of quotas and access permissions.
Creating an instance of this object generates a disabled {{object}} instance. Before this new {{object}} instance can be enabled (via a SetParameterValues command), it MUST have the {{param|Name}} configured. Folder instances are unique per {{object|.LogicalVolume.{i}.}} and the unique key for this object is {{param|Name}} which also means that once an instance is enabled {{param|Name}} becomes immutable for the life of the instance.</description>
<uniqueKey>
<parameter ref="Name"></parameter>
</uniqueKey>
<parameter name="Name" access="readWrite">
<description>Setting of this variable will add a new folder. The full hierarchical pathname of the folder MUST be specified.
All folders created on the Logical Volume will appear here, created locally or via AddObject.
The local directory name will be formatted as a UNIX-style directory name, for example: /home/ftp
The presence of a trailing `/' character is inconsequential, meaning that /home/ftp/ is the same as /home/ftp.
Once this instance becomes enabled, this parameter will be immutable for the life of the instance. This parameter acts as the unique identifier for the instance, thus the device MUST NOT allow multiple {{object}} instances within a {{object|.LogicalVolume.{i}.}} to use the same {{param}}.</description>
<syntax>
<string>
<size maxLength="64"/>
</string>
<default type="object" value=""/>
</syntax>
</parameter>
<parameter name="Enable" access="readWrite">
<description>Entry is enabled or disabled</description>
<syntax>
<boolean/>
<default type="object" value="false"/>
</syntax>
</parameter>
<parameter name="UserAccountAccess" access="readWrite">
<description>What are the User authentication requirements of this folder? The following bitmap is used.
:11 = Authenticated Access required for Network protocols (NFS/AFP/SMB) and for non Network protocols (FTP/SFTP/HTTP/HTTPS)
:10 = Authenticated Access required for Network protocols (NFS/AFP/SMB)
:01 = Authenticated Access Required for non Network protocols (FTP/SFTP/HTTP/HTTPS)
:00 = No Authentication required</description>
<syntax>
<unsignedInt>
<range minInclusive="0" maxInclusive="3"/>
</unsignedInt>
<default type="object" value="2"/>
</syntax>
</parameter>
<parameter name="UserAccessNumberOfEntries" access="readOnly">
<description>The number of instances of {{object|.LogicalVolume.{i}.Folder.{i}.UserAccess.{i}.}} on this {{object|.LogicalVolume.{i}.Folder.{i}.}}.</description>
<syntax>
<unsignedInt/>
</syntax>
</parameter>
<parameter name="GroupAccessNumberOfEntries" access="readOnly">
<description>The number of instances of {{object|.LogicalVolume.{i}.Folder.{i}.GroupAccess.{i}.}} on this {{object|.LogicalVolume.{i}.Folder.{i}.}}</description>
<syntax>
<unsignedInt/>
</syntax>
</parameter>
</object>
<object name="StorageService.{i}.LogicalVolume.{i}.Folder.{i}.UserAccess.{i}." access="readWrite" minEntries="0" maxEntries="unbounded" numEntriesParameter="UserAccessNumberOfEntries">
<description>This object provides information about each user account configured for access permissions on this folder.</description>
<uniqueKey>
<parameter ref="UserReference"></parameter>
</uniqueKey>
<parameter name="UserReference" access="readWrite">
<description>Represents a user that has access to this folder. The instance of {{object|.UserAccount.{i}.}} referenced by this parameter MUST exist within the same StorageService instance.</description>
<syntax>
<string>
<size maxLength="256"/>
<pathRef targetParent=".UserAccount." targetType="row" refType="weak"></pathRef>
</string>
<default type="object" value=""/>
</syntax>
</parameter>
<parameter name="Permissions" access="readWrite">
<description>What permissions the user account has over this {{object|.LogicalVolume.{i}.Folder.{i}.}}. This is an integer value like the xNIX systems use for access permissions, meaning that it is a 3-bit field with the following structure:
:100 = read field
:010 = write field
:001 = execute field</description>
<syntax>
<unsignedInt>
<range minInclusive="0" maxInclusive="7"/>
</unsignedInt>
<default type="object" value="7"/>
</syntax>
</parameter>
</object>
<object name="StorageService.{i}.LogicalVolume.{i}.Folder.{i}.GroupAccess.{i}." access="readWrite" minEntries="0" maxEntries="unbounded" numEntriesParameter="GroupAccessNumberOfEntries">
<description>This object provides information about each user group configured for access permissions on this folder.</description>
<uniqueKey>
<parameter ref="GroupReference"></parameter>
</uniqueKey>
<parameter name="GroupReference" access="readWrite">
<description>Represents a user group that is a collection of User Accounts that have access to this folder. The {{object|.UserGroup.{i}.}} referenced by this parameter MUST exist within the same StorageService instance.</description>
<syntax>
<string>
<size maxLength="256"/>
<pathRef targetParent=".UserGroup." targetType="row" refType="weak"></pathRef>
</string>
<default type="object" value=""/>
</syntax>
</parameter>
<parameter name="Permissions" access="readWrite">
<description>What permissions the group members have over this {{object|.LogicalVolume.{i}.Folder.{i}.}} instance. This is an integer value like the xNIX systems use for access permissions, meaning that it is a 3-bit field with the following structure:
:100 = read field
:010 = write field
:001 = execute field</description>
<syntax>
<unsignedInt>
<range minInclusive="0" maxInclusive="7"/>
</unsignedInt>
<default type="object" value="7"/>
</syntax>
</parameter>
</object>
<object name="StorageService.{i}.LogicalVolume.{i}.Folder.{i}.Quota." access="readOnly" minEntries="1" maxEntries="1">
<description>This object allows the configuration of per-folder storage quota management.</description>
<parameter name="Enable" access="readWrite">
<description>Enables or disables quota management for this folder.</description>
<syntax>
<boolean/>
<default type="object" value="false"/>
</syntax>
</parameter>
<parameter name="Capacity" access="readWrite">
<description>Maximum size in {{units}} of the quota for this folder.</description>
<syntax>
<unsignedInt>
<units value="MB"></units>
</unsignedInt>
</syntax>
</parameter>
<parameter name="UsedSpace" access="readOnly" activeNotify="canDeny">
<description>Current size in {{units}} of this folder.</description>
<syntax>
<unsignedInt>
<units value="MB"></units>
</unsignedInt>
</syntax>
</parameter>
<parameter name="ThresholdLimit" access="readWrite">
<description>This value is specified in {{units}} and controls when {{param|ThresholdReached}} will have its value altered. If the value of {{param|UsedSpace}} plus the value of this parameter is greater than or equal to the value of {{param|Capacity}} then the value of {{param|ThresholdReached}} will be {{true}}, otherwise it will be {{false}}. Setting the value of this parameter to 0 will disable the Thresholding mechanism.</description>
<syntax>
<unsignedInt>
<units value="MB"></units>
</unsignedInt>
<default type="object" value="0"/>
</syntax>
</parameter>