Changeset 23536 for branches/neb_distrib_20081210/Nebulous/nebclient
- Timestamp:
- Mar 25, 2009, 3:37:05 PM (17 years ago)
- Location:
- branches/neb_distrib_20081210/Nebulous
- Files:
-
- 9 edited
-
. (modified) (2 props)
-
nebclient (modified) (1 prop)
-
nebclient/Doxyfile.in (modified) (26 diffs)
-
nebclient/src/nebclient.c (modified) (5 diffs)
-
nebclient/src/nebclient.h (modified) (2 diffs)
-
nebclient/tests (modified) (1 prop)
-
nebclient/tests/tap (modified) (1 prop)
-
nebclient/tests/tap/src (modified) (1 prop)
-
nebclient/tests/tests.c (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branches/neb_distrib_20081210/Nebulous
-
Property svn:ignore
set to
Build
META.yml
Makefile
Makefile.PL
_build
blib
-
Property svn:mergeinfo
set to
/trunk/Nebulous merged eligible
-
Property svn:ignore
set to
-
branches/neb_distrib_20081210/Nebulous/nebclient
-
Property svn:ignore
set to
Doxyfile
Makefile
Makefile.in
aclocal.m4
autom4te.cache
compile
config.guess
config.h
config.h.in
config.log
config.status
config.sub
configure
depcomp
docs
install-sh
libtool
ltmain.sh
missing
nebclient.pc
stamp-h1
-
Property svn:ignore
set to
-
branches/neb_distrib_20081210/Nebulous/nebclient/Doxyfile.in
r20900 r23536 1 # Doxyfile 1. 4.21 # Doxyfile 1.5.4 2 2 3 3 # This file describes the settings to be used by the documentation system … … 15 15 #--------------------------------------------------------------------------- 16 16 17 # This tag specifies the encoding used for all characters in the config file that 18 # follow. The default is UTF-8 which is also the encoding used for all text before 19 # the first occurrence of this tag. Doxygen uses libiconv (or the iconv built into 20 # libc) for the transcoding. See http://www.gnu.org/software/libiconv for the list of 21 # possible encodings. 22 23 DOXYFILE_ENCODING = UTF-8 24 17 25 # The PROJECT_NAME tag is a single word (or a sequence of words surrounded 18 26 # by quotes) that should identify the project. 19 27 20 PROJECT_NAME = @PACKAGE_NAME@28 PROJECT_NAME = nebclient 21 29 22 30 # The PROJECT_NUMBER tag can be used to enter a project or revision number. … … 24 32 # if some version control system is used. 25 33 26 PROJECT_NUMBER = @PACKAGE_VERSION@34 PROJECT_NUMBER = 0.08 27 35 28 36 # The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) … … 31 39 # where doxygen was started. If left blank the current directory will be used. 32 40 33 # @top_builddir@ doesn't work for some reason 34 OUTPUT_DIRECTORY = @builddir@/docs 41 OUTPUT_DIRECTORY = ./docs 35 42 36 43 # If the CREATE_SUBDIRS tag is set to YES, then doxygen will create … … 47 54 # information to generate all constant output in the proper language. 48 55 # The default language is English, other supported languages are: 49 # Brazilian, Catalan, Chinese, Chinese-Traditional, Croatian, Czech, Danish,50 # Dutch, Finnish, French, German, Greek, Hungarian, Italian, Japanese,51 # Japanese-en (Japanese with English messages), Korean, Korean-en, Norwegian,52 # Polish, Portuguese, Romanian, Russian, Serbian, Slovak, Slovene, Spanish,53 # S wedish, and Ukrainian.56 # Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional, 57 # Croatian, Czech, Danish, Dutch, Finnish, French, German, Greek, Hungarian, 58 # Italian, Japanese, Japanese-en (Japanese with English messages), Korean, 59 # Korean-en, Lithuanian, Norwegian, Polish, Portuguese, Romanian, Russian, 60 # Serbian, Slovak, Slovene, Spanish, Swedish, and Ukrainian. 54 61 55 62 OUTPUT_LANGUAGE = English 56 57 # This tag can be used to specify the encoding used in the generated output.58 # The encoding is not always determined by the language that is chosen,59 # but also whether or not the output is meant for Windows or non-Windows users.60 # In case there is a difference, setting the USE_WINDOWS_ENCODING tag to YES61 # forces the Windows encoding (this is the default for the Windows binary),62 # whereas setting the tag to NO uses a Unix-style encoding (the default for63 # all platforms other than Windows).64 65 USE_WINDOWS_ENCODING = NO66 63 67 64 # If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will … … 137 134 # will interpret the first line (until the first dot) of a JavaDoc-style 138 135 # comment as the brief description. If set to NO, the JavaDoc 139 # comments will behave just like the Qt-style comments (thus requiring an140 # explicit @brief command for a brief description.136 # comments will behave just like regular Qt-style comments 137 # (thus requiring an explicit @brief command for a brief description.) 141 138 142 139 JAVADOC_AUTOBRIEF = NO 140 141 # If the QT_AUTOBRIEF tag is set to YES then Doxygen will 142 # interpret the first line (until the first dot) of a Qt-style 143 # comment as the brief description. If set to NO, the comments 144 # will behave just like regular Qt-style comments (thus requiring 145 # an explicit \brief command for a brief description.) 146 147 QT_AUTOBRIEF = NO 143 148 144 149 # The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen … … 162 167 163 168 INHERIT_DOCS = YES 164 165 # If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC166 # tag is set to YES, then doxygen will reuse the documentation of the first167 # member in the group (if any) for the other members of the group. By default168 # all members of a group must be documented explicitly.169 170 DISTRIBUTE_GROUP_DOC = NO171 169 172 170 # If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce … … 197 195 OPTIMIZE_OUTPUT_FOR_C = NO 198 196 199 # Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java sources200 # only. Doxygen will then generate output that is more tailored for Java.197 # Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java 198 # sources only. Doxygen will then generate output that is more tailored for Java. 201 199 # For instance, namespaces will be presented as packages, qualified scopes 202 200 # will look different, etc. 203 201 204 202 OPTIMIZE_OUTPUT_JAVA = NO 203 204 # If you use STL classes (i.e. std::string, std::vector, etc.) but do not want to 205 # include (a tag file for) the STL sources as input, then you should 206 # set this tag to YES in order to let doxygen match functions declarations and 207 # definitions whose arguments contain STL classes (e.g. func(std::string); v.s. 208 # func(std::string) {}). This also make the inheritance and collaboration 209 # diagrams that involve STL classes more complete and accurate. 210 211 BUILTIN_STL_SUPPORT = NO 212 213 # If you use Microsoft's C++/CLI language, you should set this option to YES to 214 # enable parsing support. 215 216 CPP_CLI_SUPPORT = NO 217 218 # Set the SIP_SUPPORT tag to YES if your project consists of sip sources only. 219 # Doxygen will parse them like normal C++ but will assume all classes use public 220 # instead of private inheritance when no explicit protection keyword is present. 221 222 SIP_SUPPORT = NO 223 224 # If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC 225 # tag is set to YES, then doxygen will reuse the documentation of the first 226 # member in the group (if any) for the other members of the group. By default 227 # all members of a group must be documented explicitly. 228 229 DISTRIBUTE_GROUP_DOC = NO 205 230 206 231 # Set the SUBGROUPING tag to YES (the default) to allow class member groups of … … 212 237 SUBGROUPING = YES 213 238 239 # When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct (or union) is 240 # documented as struct with the name of the typedef. So 241 # typedef struct TypeS {} TypeT, will appear in the documentation as a struct 242 # with name TypeT. When disabled the typedef will appear as a member of a file, 243 # namespace, or class. And the struct will be named TypeS. This can typically 244 # be useful for C code where the coding convention is that all structs are 245 # typedef'ed and only the typedef is referenced never the struct's name. 246 247 TYPEDEF_HIDES_STRUCT = NO 248 214 249 #--------------------------------------------------------------------------- 215 250 # Build related configuration options … … 245 280 246 281 EXTRACT_LOCAL_METHODS = NO 282 283 # If this flag is set to YES, the members of anonymous namespaces will be extracted 284 # and appear in the documentation as a namespace called 'anonymous_namespace{file}', 285 # where file will be replaced with the base name of the file that contains the anonymous 286 # namespace. By default anonymous namespace are hidden. 287 288 EXTRACT_ANON_NSPACES = NO 247 289 248 290 # If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all … … 378 420 # If the sources in your project are distributed over multiple directories 379 421 # then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy 380 # in the documentation. 422 # in the documentation. The default is NO. 381 423 382 424 SHOW_DIRECTORIES = YES … … 387 429 # popen()) the command <command> <input-file>, where <command> is the value of 388 430 # the FILE_VERSION_FILTER tag, and <input-file> is the name of an input file 389 # provided by doxygen. Whatever the prog am writes to standard output431 # provided by doxygen. Whatever the program writes to standard output 390 432 # is used as the file version. See the manual for examples. 391 433 … … 435 477 # be obtained via FILE_VERSION_FILTER) 436 478 437 WARN_FORMAT = "$file:$line: $text "479 WARN_FORMAT = "$file:$line: $text " 438 480 439 481 # The WARN_LOGFILE tag can be used to specify a file to which warning … … 452 494 # with spaces. 453 495 454 INPUT = @top_srcdir@/src 496 INPUT = ./src 497 498 # This tag can be used to specify the character encoding of the source files that 499 # doxygen parses. Internally doxygen uses the UTF-8 encoding, which is also the default 500 # input encoding. Doxygen uses libiconv (or the iconv built into libc) for the transcoding. 501 # See http://www.gnu.org/software/libiconv for the list of possible encodings. 502 503 INPUT_ENCODING = UTF-8 455 504 456 505 # If the value of the INPUT tag contains directories, you can use the … … 459 508 # blank the following patterns are tested: 460 509 # *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx 461 # *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm 510 # *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py *.f90 462 511 463 512 FILE_PATTERNS = *.h … … 483 532 # If the value of the INPUT tag contains directories, you can use the 484 533 # EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude 485 # certain files from those directories. 534 # certain files from those directories. Note that the wildcards are matched 535 # against the file with absolute path, so to exclude all test directories 536 # for example use the pattern */test/* 486 537 487 538 EXCLUDE_PATTERNS = 539 540 # The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names 541 # (namespaces, classes, functions, etc.) that should be excluded from the output. 542 # The symbol name can be a fully qualified name, a word, or if the wildcard * is used, 543 # a substring. Examples: ANamespace, AClass, AClass::ANamespace, ANamespace::*Test 544 545 EXCLUDE_SYMBOLS = 488 546 489 547 # The EXAMPLE_PATH tag can be used to specify one or more files or … … 545 603 # be generated. Documented entities will be cross-referenced with these sources. 546 604 # Note: To get rid of all source code in the generated output, make sure also 547 # VERBATIM_HEADERS is set to NO. 605 # VERBATIM_HEADERS is set to NO. If you have enabled CALL_GRAPH or CALLER_GRAPH 606 # then you must also enable this option. If you don't then doxygen will produce 607 # a warning and turn it on anyway 548 608 549 609 SOURCE_BROWSER = NO … … 571 631 572 632 REFERENCES_RELATION = YES 633 634 # If the REFERENCES_LINK_SOURCE tag is set to YES (the default) 635 # and SOURCE_BROWSER tag is set to YES, then the hyperlinks from 636 # functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will 637 # link to the source code. Otherwise they will link to the documentstion. 638 639 REFERENCES_LINK_SOURCE = YES 640 641 # If the USE_HTAGS tag is set to YES then the references to source code 642 # will point to the HTML generated by the htags(1) tool instead of doxygen 643 # built-in source browser. The htags tool is part of GNU's global source 644 # tagging system (see http://www.gnu.org/software/global/global.html). You 645 # will need version 4.8.6 or higher. 646 647 USE_HTAGS = NO 573 648 574 649 # If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen … … 656 731 GENERATE_HTMLHELP = NO 657 732 733 # If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML 734 # documentation will contain sections that can be hidden and shown after the 735 # page has loaded. For this to work a browser that supports 736 # JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox 737 # Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari). 738 739 HTML_DYNAMIC_SECTIONS = NO 740 658 741 # If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can 659 742 # be used to specify the file name of the resulting .chm file. You … … 958 1041 # If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES 959 1042 # then the macro expansion is limited to the macros specified with the 960 # PREDEFINED and EXPAND_AS_ PREDEFINED tags.1043 # PREDEFINED and EXPAND_AS_DEFINED tags. 961 1044 962 1045 EXPAND_ONLY_PREDEF = NO … … 1046 1129 # interpreter (i.e. the result of `which perl'). 1047 1130 1048 PERL_PATH = @PERL@1131 PERL_PATH = /usr/bin/perl 1049 1132 1050 1133 #--------------------------------------------------------------------------- … … 1061 1144 CLASS_DIAGRAMS = YES 1062 1145 1146 # You can define message sequence charts within doxygen comments using the \msc 1147 # command. Doxygen will then run the mscgen tool (see http://www.mcternan.me.uk/mscgen/) to 1148 # produce the chart and insert it in the documentation. The MSCGEN_PATH tag allows you to 1149 # specify the directory where the mscgen tool resides. If left empty the tool is assumed to 1150 # be found in the default search path. 1151 1152 MSCGEN_PATH = 1153 1063 1154 # If set to YES, the inheritance and collaboration graphs will hide 1064 1155 # inheritance and usage relations if the target is undocumented … … 1118 1209 INCLUDED_BY_GRAPH = YES 1119 1210 1120 # If the CALL_GRAPH and HAVE_DOT tags are set to YES then doxygen will1211 # If the CALL_GRAPH, SOURCE_BROWSER and HAVE_DOT tags are set to YES then doxygen will 1121 1212 # generate a call dependency graph for every global function or class method. 1122 1213 # Note that enabling this option will significantly increase the time of a run. … … 1126 1217 CALL_GRAPH = NO 1127 1218 1219 # If the CALLER_GRAPH, SOURCE_BROWSER and HAVE_DOT tags are set to YES then doxygen will 1220 # generate a caller dependency graph for every global function or class method. 1221 # Note that enabling this option will significantly increase the time of a run. 1222 # So in most cases it will be better to enable caller graphs for selected 1223 # functions only using the \callergraph command. 1224 1225 CALLER_GRAPH = NO 1226 1128 1227 # If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen 1129 1228 # will graphical hierarchy of all classes instead of a textual one. … … 1155 1254 DOTFILE_DIRS = 1156 1255 1157 # The MAX_DOT_GRAPH_WIDTH tag can be used to set the maximum allowed width 1158 # (in pixels) of the graphs generated by dot. If a graph becomes larger than 1159 # this value, doxygen will try to truncate the graph, so that it fits within 1160 # the specified constraint. Beware that most browsers cannot cope with very 1161 # large images. 1162 1163 MAX_DOT_GRAPH_WIDTH = 1024 1164 1165 # The MAX_DOT_GRAPH_HEIGHT tag can be used to set the maximum allows height 1166 # (in pixels) of the graphs generated by dot. If a graph becomes larger than 1167 # this value, doxygen will try to truncate the graph, so that it fits within 1168 # the specified constraint. Beware that most browsers cannot cope with very 1169 # large images. 1170 1171 MAX_DOT_GRAPH_HEIGHT = 1024 1256 # The MAX_DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of 1257 # nodes that will be shown in the graph. If the number of nodes in a graph 1258 # becomes larger than this value, doxygen will truncate the graph, which is 1259 # visualized by representing a node as a red box. Note that doxygen if the number 1260 # of direct children of the root node in a graph is already larger than 1261 # MAX_DOT_GRAPH_NOTES then the graph will not be shown at all. Also note 1262 # that the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH. 1263 1264 DOT_GRAPH_MAX_NODES = 50 1172 1265 1173 1266 # The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the … … 1176 1269 # that lay further from the root node will be omitted. Note that setting this 1177 1270 # option to 1 or 2 may greatly reduce the computation time needed for large 1178 # code bases. Also note that a graph may be further truncated if the graph's 1179 # image dimensions are not sufficient to fit the graph (see MAX_DOT_GRAPH_WIDTH 1180 # and MAX_DOT_GRAPH_HEIGHT). If 0 is used for the depth value (the default), 1181 # the graph is not depth-constrained. 1271 # code bases. Also note that the size of a graph can be further restricted by 1272 # DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction. 1182 1273 1183 1274 MAX_DOT_GRAPH_DEPTH = 0 -
branches/neb_distrib_20081210/Nebulous/nebclient/src/nebclient.c
r20986 r23536 4 4 * Copyright (C) 2005 Joshua Hoblitt 5 5 * 6 * $Id: nebclient.c,v 1.5 4.6.1 2008-12-14 22:03:08 eugeneExp $6 * $Id: nebclient.c,v 1.57 2009-02-13 02:45:47 jhoblitt Exp $ 7 7 */ 8 8 … … 336 336 bool nebSetXattr(nebServer *server, const char *key, const char *name, const char *value, nebCR flag) 337 337 { 338 339 338 REQUIRE_SERVER; 340 339 … … 363 362 if (!response) { 364 363 nebSetErr(server, "can not set xattr"); 364 return false; 365 } 366 367 return true; 368 } 369 370 371 char *nebGetXattr(nebServer *server, const char *key, const char *name) 372 { 373 REQUIRE_SERVER; 374 375 if (!key) { 376 nebSetErr(server, "parameter 'key' may not be NULL"); 377 return false; 378 } 379 if (!name) { 380 nebSetErr(server, "parameter 'name' may not be NULL"); 381 return false; 382 } 383 384 struct ns1__getxattr_USCOREobjectResponse response; 385 if (soap_call_ns1__getxattr_USCOREobject(server->soap, server->endpoint, 386 NULL, (char *)key, (char *)name, (char **)&response) != SOAP_OK) { 387 nebSetServerErr(server); 388 return false; 389 } 390 391 if (!(char *)response.result) { 392 nebSetErr(server, "server returned no result"); 393 return NULL; 394 } 395 396 char *value = xmalloc(strlen((char *)response.result) + 1); 397 strcpy(value, (char *)response.result); 398 399 return value; 400 } 401 402 403 int nebListXattr(nebServer *server, const char *key, char ***xattrs) 404 { 405 REQUIRE_SERVER; 406 407 if (!key) { 408 nebSetErr(server, "parameter 'key' may not be NULL"); 409 return false; 410 } 411 412 struct ns1__listxattr_USCOREobjectResponse response; 413 if (soap_call_ns1__listxattr_USCOREobject(server->soap, server->endpoint, 414 NULL, (char *)key, &response) != SOAP_OK) { 415 nebSetServerErr(server); 416 return false; 417 } 418 419 int resultElements = response.result->__size; 420 421 if (xattrs) { 422 char **resultArray = response.result->__ptr; 423 *xattrs = xmalloc(resultElements * sizeof(char *)); 424 if (resultElements) { 425 for (int i = 0; i < resultElements; i++) { 426 *xattrs[i] = xmalloc(strlen(resultArray[i]) + 1); 427 strcpy(*xattrs[i], resultArray[i]); 428 } 429 430 } 431 } 432 433 return resultElements; 434 } 435 436 437 bool nebRemoveXattr(nebServer *server, const char *key, const char *name) 438 { 439 REQUIRE_SERVER; 440 441 if (!key) { 442 nebSetErr(server, "parameter 'key' may not be NULL"); 443 return false; 444 } 445 if (!name) { 446 nebSetErr(server, "parameter 'name' may not be NULL"); 447 return false; 448 } 449 450 int response; 451 if (soap_call_ns1__removexattr_USCOREobject(server->soap, server->endpoint, 452 NULL, (char *)key, (char *)name, &response) != SOAP_OK) { 453 nebSetServerErr(server); 454 return false; 455 } 456 457 if (!response) { 458 nebSetErr(server, "can not remove xattr"); 365 459 return false; 366 460 } … … 539 633 540 634 for (int i = 0; i < locations->n; i++) { 541 if (!nebDeleteInstance(server, key, locations->URI[i])) {635 if (!nebDeleteInstance(server, key, locations->URI[i])) { 542 636 nebSetErr(server, "can not delete instance"); 543 637 nebObjectInstancesFree(locations); … … 676 770 677 771 if (soap_call_ns1__delete_USCOREinstance(server->soap, server->endpoint, 678 NULL, (char *)key, (char *)URI, &response) != SOAP_OK) {772 NULL, (char *)key, (char *)URI, &response) != SOAP_OK) { 679 773 nebFree(filename); 680 774 -
branches/neb_distrib_20081210/Nebulous/nebclient/src/nebclient.h
r20986 r23536 4 4 * Copyright (C) 2005 Joshua Hoblitt 5 5 * 6 * $Id: nebclient.h,v 1. 36.6.1 2008-12-14 22:03:08 eugeneExp $6 * $Id: nebclient.h,v 1.40 2009-02-13 02:49:00 jhoblitt Exp $ 7 7 */ 8 8 … … 155 155 ); 156 156 157 /** Get an Xattr on a storage object 158 * 159 * @return true on success 160 */ 161 char *nebGetXattr( 162 nebServer *server, ///< nebServer object 163 const char *key, ///< storage object key (name) 164 const char *name ///< xattr name 165 ); 166 167 /** List all Xattrs on a storage object 168 * 169 * This function returns the count of Xattrs on an object and the actual names 170 * are returned in the (char **) pointed to by the xattrs param. The xattrs 171 * param may be NULL. 172 * 173 * @return int 174 */ 175 int nebListXattr( 176 nebServer *server, ///< nebServer object 177 const char *key, ///< storage object key (name) 178 char ***xattrs ///< array of xattr names to return 179 ); 180 181 /** Remove an Xattr from a storage object 182 * 183 * @return true on success 184 */ 185 bool nebRemoveXattr( 186 nebServer *server, ///< nebServer object 187 const char *key, ///< storage object key (name) 188 const char *name ///< xattr name 189 ); 190 157 191 /** Lists all instances of a storage object 158 192 * -
branches/neb_distrib_20081210/Nebulous/nebclient/tests
-
Property svn:ignore
set to
.deps
Makefile
Makefile.in
.libs
tests
-
Property svn:ignore
set to
-
branches/neb_distrib_20081210/Nebulous/nebclient/tests/tap
- Property svn:ignore
-
old new 1 *.bb 2 *.bbg 3 *.da 1 4 .in 2 5 Makefile … … 4 7 aclocal.m4 5 8 autom4te.cache 9 config.guess 6 10 config.log 7 11 config.status 12 config.sub 8 13 configure 14 depcomp 15 gmon.out 16 install-sh 9 17 libtool 10 *.bb 11 *.bbg 12 *.da 13 gmon.out 18 ltmain.sh 19 missing 20 src/.deps 21 src/Makefile 22 src/Makefile.in 23 src/config.h 24 src/config.h.in 25 src/stamp-h1
-
- Property svn:ignore
-
branches/neb_distrib_20081210/Nebulous/nebclient/tests/tap/src
- Property svn:ignore
-
old new 1 *.bb 2 *.bbg 3 *.da 1 4 .deps 2 5 .libs 3 6 Makefile 4 7 Makefile.in 5 libtap.la6 tap.lo7 8 config.h 8 9 config.h.in 10 gmon.out 11 ignore 12 libtap.la 9 13 stamp-h1 10 *.bb 11 *.bbg 12 *.da 13 gmon.out 14 tap.lo
-
- Property svn:ignore
-
branches/neb_distrib_20081210/Nebulous/nebclient/tests/tests.c
r20900 r23536 2 2 #include <stdlib.h> 3 3 #include <unistd.h> 4 #include <string.h> 4 5 #include <stdbool.h> 5 6 … … 19 20 char *key = "foobarbaz"; 20 21 21 plan_tests(2 4);22 plan_tests(28); 22 23 23 24 if (getenv("NEB_SERVER")) { … … 96 97 neb_ok(server, nebSetXattr(server, key, "user.copies", "2", NEB_CREATE), "set user.copies xattr"); 97 98 99 char *copies = nebGetXattr(server, key, "user.copies"); 100 neb_ok(server, strcmp(copies, "2") == 0, "get user.copies xattr"); 101 char **xattrs = NULL; 102 int n_xattrs = nebListXattr(server, key, &xattrs); 103 printf("# %s\n\n", xattrs[0]); 104 neb_ok(server, n_xattrs == 1, "count of xattrs"); 105 neb_ok(server, strcmp(xattrs[0], "user.copies") == 0, "user.copies xattr exists"); 106 neb_ok(server, nebRemoveXattr(server, key, "user.copies"), "remove user.copies xattr"); 107 98 108 { 99 109 nebObjectInstances *locations = NULL;
Note:
See TracChangeset
for help on using the changeset viewer.
