aboutsummaryrefslogtreecommitdiff
path: root/src/include
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2009-08-22 17:57:31 +0000
committerChristian Grothoff <christian@grothoff.org>2009-08-22 17:57:31 +0000
commit2ae973618f3b51fa9bbf5532eaa1352cafc24ecc (patch)
treeea8bb13a4c7d390f88318b61bc6caf50ea6cf400 /src/include
parent9a10e9c06a3b08c8ab73edb7d2093a6d452ecc05 (diff)
downloadgnunet-2ae973618f3b51fa9bbf5532eaa1352cafc24ecc.tar.gz
gnunet-2ae973618f3b51fa9bbf5532eaa1352cafc24ecc.zip
stuff
Diffstat (limited to 'src/include')
-rw-r--r--src/include/gnunet_fs_service.h107
1 files changed, 53 insertions, 54 deletions
diff --git a/src/include/gnunet_fs_service.h b/src/include/gnunet_fs_service.h
index ea76860c3..236bdd083 100644
--- a/src/include/gnunet_fs_service.h
+++ b/src/include/gnunet_fs_service.h
@@ -441,45 +441,45 @@ GNUNET_FS_getopt_configure_set_metadata (struct GNUNET_GETOPT_CommandLineProcess
441enum GNUNET_FS_Status 441enum GNUNET_FS_Status
442{ 442{
443 /** 443 /**
444 * Notification that we have started to share a file structure. 444 * Notification that we have started to publish a file structure.
445 */ 445 */
446 GNUNET_FS_STATUS_SHARE_START, 446 GNUNET_FS_STATUS_PUBLISH_START,
447 447
448 /** 448 /**
449 * Notification that we have resumed sharing a file structure. 449 * Notification that we have resumed sharing a file structure.
450 */ 450 */
451 GNUNET_FS_STATUS_SHARE_RESUME, 451 GNUNET_FS_STATUS_PUBLISH_RESUME,
452 452
453 /** 453 /**
454 * Notification that we have suspended sharing a file structure. 454 * Notification that we have suspended sharing a file structure.
455 */ 455 */
456 GNUNET_FS_STATUS_SHARE_SUSPEND, 456 GNUNET_FS_STATUS_PUBLISH_SUSPEND,
457 457
458 /** 458 /**
459 * Notification that we are making progress sharing a file structure. 459 * Notification that we are making progress sharing a file structure.
460 */ 460 */
461 GNUNET_FS_STATUS_SHARE_PROGRESS, 461 GNUNET_FS_STATUS_PUBLISH_PROGRESS,
462 462
463 /** 463 /**
464 * Notification that an error was encountered sharing a file structure. 464 * Notification that an error was encountered sharing a file structure.
465 * The application will continue to receive resume/suspend events for 465 * The application will continue to receive resume/suspend events for
466 * this structure until "GNUNET_FS_share_stop" is called. 466 * this structure until "GNUNET_FS_publish_stop" is called.
467 */ 467 */
468 GNUNET_FS_STATUS_SHARE_ERROR, 468 GNUNET_FS_STATUS_PUBLISH_ERROR,
469 469
470 /** 470 /**
471 * Notification that we completed sharing a file structure. 471 * Notification that we completed sharing a file structure.
472 * The application will continue to receive resume/suspend events for 472 * The application will continue to receive resume/suspend events for
473 * this structure until "GNUNET_FS_share_stop" is called. 473 * this structure until "GNUNET_FS_publish_stop" is called.
474 */ 474 */
475 GNUNET_FS_STATUS_SHARE_COMPLETED, 475 GNUNET_FS_STATUS_PUBLISH_COMPLETED,
476 476
477 /** 477 /**
478 * Notification that we have stopped 478 * Notification that we have stopped
479 * the process of uploading a file structure; no 479 * the process of uploading a file structure; no
480 * futher events will be generated for this action. 480 * futher events will be generated for this action.
481 */ 481 */
482 GNUNET_FS_STATUS_SHARE_STOPPED, 482 GNUNET_FS_STATUS_PUBLISH_STOPPED,
483 483
484 /** 484 /**
485 * Notification that we have started this download. 485 * Notification that we have started this download.
@@ -640,7 +640,7 @@ struct GNUNET_FS_Namespace;
640/** 640/**
641 * Handle for controlling an upload. 641 * Handle for controlling an upload.
642 */ 642 */
643struct GNUNET_FS_ShareContext; 643struct GNUNET_FS_PublishContext;
644 644
645 645
646/** 646/**
@@ -662,7 +662,7 @@ struct GNUNET_FS_DownloadContext;
662 662
663 663
664/** 664/**
665 * Handle for detail information about a file that is being shared. 665 * Handle for detail information about a file that is being publishd.
666 * Specifies metadata, keywords, how to get the contents of the file 666 * Specifies metadata, keywords, how to get the contents of the file
667 * (i.e. data-buffer in memory, filename on disk) and other options. 667 * (i.e. data-buffer in memory, filename on disk) and other options.
668 */ 668 */
@@ -682,17 +682,17 @@ struct GNUNET_FS_ProgressInfo
682 union { 682 union {
683 683
684 /** 684 /**
685 * Values for all "GNUNET_FS_STATUS_SHARE_*" events. 685 * Values for all "GNUNET_FS_STATUS_PUBLISH_*" events.
686 */ 686 */
687 struct { 687 struct {
688 688
689 /** 689 /**
690 * Context for controlling the upload. 690 * Context for controlling the upload.
691 */ 691 */
692 struct GNUNET_FS_ShareContext *sc; 692 struct GNUNET_FS_PublishContext *sc;
693 693
694 /** 694 /**
695 * Information about the file that is being shared. 695 * Information about the file that is being publishd.
696 */ 696 */
697 const struct GNUNET_FS_FileInformation *fi; 697 const struct GNUNET_FS_FileInformation *fi;
698 698
@@ -747,7 +747,7 @@ struct GNUNET_FS_ProgressInfo
747 747
748 /** 748 /**
749 * These values are only valid for 749 * These values are only valid for
750 * GNUNET_FS_STATUS_SHARE_PROGRESS events. 750 * GNUNET_FS_STATUS_PUBLISH_PROGRESS events.
751 */ 751 */
752 struct { 752 struct {
753 753
@@ -770,7 +770,7 @@ struct GNUNET_FS_ProgressInfo
770 770
771 /** 771 /**
772 * These values are only valid for 772 * These values are only valid for
773 * GNUNET_FS_STATUS_SHARE_RESUME events. 773 * GNUNET_FS_STATUS_PUBLISH_RESUME events.
774 */ 774 */
775 struct { 775 struct {
776 776
@@ -783,7 +783,7 @@ struct GNUNET_FS_ProgressInfo
783 783
784 /** 784 /**
785 * These values are only valid for 785 * These values are only valid for
786 * GNUNET_FS_STATUS_SHARE_ERROR events. 786 * GNUNET_FS_STATUS_PUBLISH_ERROR events.
787 */ 787 */
788 struct { 788 struct {
789 789
@@ -796,7 +796,7 @@ struct GNUNET_FS_ProgressInfo
796 796
797 } specifics; 797 } specifics;
798 798
799 } share; 799 } publish;
800 800
801 801
802 /** 802 /**
@@ -1348,7 +1348,7 @@ struct GNUNET_FS_ProgressInfo
1348 * will be passed to future callbacks in the respective 1348 * will be passed to future callbacks in the respective
1349 * field in the GNUNET_FS_ProgressInfo struct. 1349 * field in the GNUNET_FS_ProgressInfo struct.
1350 */ 1350 */
1351typedef int (*GNUNET_FS_ProgressCallback) 1351typedef void* (*GNUNET_FS_ProgressCallback)
1352 (void *cls, 1352 (void *cls,
1353 const struct GNUNET_FS_ProgressInfo *info); 1353 const struct GNUNET_FS_ProgressInfo *info);
1354 1354
@@ -1388,10 +1388,10 @@ GNUNET_FS_stop (struct GNUNET_FS_Handle *h);
1388 1388
1389 1389
1390/** 1390/**
1391 * Function called on entries in a GNUNET_FS_FileInformation share-structure. 1391 * Function called on entries in a GNUNET_FS_FileInformation publish-structure.
1392 * 1392 *
1393 * @param cls closure 1393 * @param cls closure
1394 * @param fi the entry in the share-structure 1394 * @param fi the entry in the publish-structure
1395 * @param length length of the file or directory 1395 * @param length length of the file or directory
1396 * @param meta metadata for the file or directory (can be modified) 1396 * @param meta metadata for the file or directory (can be modified)
1397 * @param uri pointer to the keywords that will be used for this entry (can be modified) 1397 * @param uri pointer to the keywords that will be used for this entry (can be modified)
@@ -1415,9 +1415,9 @@ typedef int (*GNUNET_FS_FileInformationProcessor)(void *cls,
1415 1415
1416 1416
1417/** 1417/**
1418 * Create an entry for a file in a share-structure. 1418 * Create an entry for a file in a publish-structure.
1419 * 1419 *
1420 * @param filename name of the file or directory to share 1420 * @param filename name of the file or directory to publish
1421 * @param meta metadata for the file 1421 * @param meta metadata for the file
1422 * @param do_index GNUNET_YES for index, GNUNET_NO for insertion, 1422 * @param do_index GNUNET_YES for index, GNUNET_NO for insertion,
1423 * GNUNET_SYSERR for simulation 1423 * GNUNET_SYSERR for simulation
@@ -1426,7 +1426,7 @@ typedef int (*GNUNET_FS_FileInformationProcessor)(void *cls,
1426 * keep this file available? Use 0 for maximum anonymity and 1426 * keep this file available? Use 0 for maximum anonymity and
1427 * minimum reliability... 1427 * minimum reliability...
1428 * @param expirationTime when should this content expire? 1428 * @param expirationTime when should this content expire?
1429 * @return share structure entry for the file 1429 * @return publish structure entry for the file
1430 */ 1430 */
1431struct GNUNET_FS_FileInformation * 1431struct GNUNET_FS_FileInformation *
1432GNUNET_FS_file_information_create_from_file (void *client_info, 1432GNUNET_FS_file_information_create_from_file (void *client_info,
@@ -1439,7 +1439,7 @@ GNUNET_FS_file_information_create_from_file (void *client_info,
1439 1439
1440 1440
1441/** 1441/**
1442 * Create an entry for a file in a share-structure. 1442 * Create an entry for a file in a publish-structure.
1443 * 1443 *
1444 * @param length length of the file 1444 * @param length length of the file
1445 * @param data data for the file (should not be used afterwards by 1445 * @param data data for the file (should not be used afterwards by
@@ -1452,7 +1452,7 @@ GNUNET_FS_file_information_create_from_file (void *client_info,
1452 * keep this file available? Use 0 for maximum anonymity and 1452 * keep this file available? Use 0 for maximum anonymity and
1453 * minimum reliability... 1453 * minimum reliability...
1454 * @param expirationTime when should this content expire? 1454 * @param expirationTime when should this content expire?
1455 * @return share structure entry for the file 1455 * @return publish structure entry for the file
1456 */ 1456 */
1457struct GNUNET_FS_FileInformation * 1457struct GNUNET_FS_FileInformation *
1458GNUNET_FS_file_information_create_from_data (void *client_info, 1458GNUNET_FS_file_information_create_from_data (void *client_info,
@@ -1489,7 +1489,7 @@ typedef size_t (*GNUNET_FS_DataReader)(void *cls,
1489 1489
1490 1490
1491/** 1491/**
1492 * Create an entry for a file in a share-structure. 1492 * Create an entry for a file in a publish-structure.
1493 * 1493 *
1494 * @param length length of the file 1494 * @param length length of the file
1495 * @param reader function that can be used to obtain the data for the file 1495 * @param reader function that can be used to obtain the data for the file
@@ -1504,7 +1504,7 @@ typedef size_t (*GNUNET_FS_DataReader)(void *cls,
1504 * keep this file available? Use 0 for maximum anonymity and 1504 * keep this file available? Use 0 for maximum anonymity and
1505 * minimum reliability... 1505 * minimum reliability...
1506 * @param expirationTime when should this content expire? 1506 * @param expirationTime when should this content expire?
1507 * @return share structure entry for the file 1507 * @return publish structure entry for the file
1508 */ 1508 */
1509struct GNUNET_FS_FileInformation * 1509struct GNUNET_FS_FileInformation *
1510GNUNET_FS_file_information_create_from_reader (void *client_info, 1510GNUNET_FS_file_information_create_from_reader (void *client_info,
@@ -1555,7 +1555,7 @@ typedef int (*GNUNET_FS_DirectoryScanner)(void *cls,
1555/** 1555/**
1556 * Simple, useful default implementation of a directory scanner 1556 * Simple, useful default implementation of a directory scanner
1557 * (GNUNET_FS_DirectoryScanner). This implementation expects to get a 1557 * (GNUNET_FS_DirectoryScanner). This implementation expects to get a
1558 * UNIX filename, will share all files in the directory except hidden 1558 * UNIX filename, will publish all files in the directory except hidden
1559 * files (those starting with a "."). Metadata will be extracted 1559 * files (those starting with a "."). Metadata will be extracted
1560 * using GNU libextractor; the specific list of plugins should be 1560 * using GNU libextractor; the specific list of plugins should be
1561 * specified in "cls", passing NULL will disable (!) metadata 1561 * specified in "cls", passing NULL will disable (!) metadata
@@ -1578,7 +1578,7 @@ GNUNET_FS_directory_scanner_default (void *cls,
1578 1578
1579 1579
1580/** 1580/**
1581 * Create a share-structure from an existing file hierarchy, inferring 1581 * Create a publish-structure from an existing file hierarchy, inferring
1582 * and organizing keywords and metadata as much as possible. This 1582 * and organizing keywords and metadata as much as possible. This
1583 * function primarily performs the recursive build and re-organizes 1583 * function primarily performs the recursive build and re-organizes
1584 * keywords and metadata; for automatically getting metadata 1584 * keywords and metadata; for automatically getting metadata
@@ -1595,7 +1595,7 @@ GNUNET_FS_directory_scanner_default (void *cls,
1595 * keep this file available? Use 0 for maximum anonymity and 1595 * keep this file available? Use 0 for maximum anonymity and
1596 * minimum reliability... 1596 * minimum reliability...
1597 * @param expirationTime when should this content expire? 1597 * @param expirationTime when should this content expire?
1598 * @return share structure entry for the directory, NULL on error 1598 * @return publish structure entry for the directory, NULL on error
1599 */ 1599 */
1600struct GNUNET_FS_FileInformation * 1600struct GNUNET_FS_FileInformation *
1601GNUNET_FS_file_information_create_from_directory (void *client_info, 1601GNUNET_FS_file_information_create_from_directory (void *client_info,
@@ -1607,7 +1607,7 @@ GNUNET_FS_file_information_create_from_directory (void *client_info,
1607 1607
1608 1608
1609/** 1609/**
1610 * Create an entry for an empty directory in a share-structure. 1610 * Create an entry for an empty directory in a publish-structure.
1611 * This function should be used by applications for which the 1611 * This function should be used by applications for which the
1612 * use of "GNUNET_FS_file_information_create_from_directory" 1612 * use of "GNUNET_FS_file_information_create_from_directory"
1613 * is not appropriate. 1613 * is not appropriate.
@@ -1620,7 +1620,7 @@ GNUNET_FS_file_information_create_from_directory (void *client_info,
1620 * keep this file available? Use 0 for maximum anonymity and 1620 * keep this file available? Use 0 for maximum anonymity and
1621 * minimum reliability... 1621 * minimum reliability...
1622 * @param expirationTime when should this content expire? 1622 * @param expirationTime when should this content expire?
1623 * @return share structure entry for the directory , NULL on error 1623 * @return publish structure entry for the directory , NULL on error
1624 */ 1624 */
1625struct GNUNET_FS_FileInformation * 1625struct GNUNET_FS_FileInformation *
1626GNUNET_FS_file_information_create_empty_directory (void *client_info, 1626GNUNET_FS_file_information_create_empty_directory (void *client_info,
@@ -1632,9 +1632,9 @@ GNUNET_FS_file_information_create_empty_directory (void *client_info,
1632 1632
1633 1633
1634/** 1634/**
1635 * Add an entry to a directory in a share-structure. Clients 1635 * Add an entry to a directory in a publish-structure. Clients
1636 * should never modify share structures that were passed to 1636 * should never modify publish structures that were passed to
1637 * "GNUNET_FS_share_start" already. 1637 * "GNUNET_FS_publish_start" already.
1638 * 1638 *
1639 * @param dir the directory 1639 * @param dir the directory
1640 * @param end the entry to add; the entry must not have been 1640 * @param end the entry to add; the entry must not have been
@@ -1648,9 +1648,9 @@ GNUNET_FS_file_information_add (struct GNUNET_FS_FileInformation *dir,
1648 1648
1649 1649
1650/** 1650/**
1651 * Inspect a file or directory in a share-structure. Clients 1651 * Inspect a file or directory in a publish-structure. Clients
1652 * should never modify share structures that were passed to 1652 * should never modify publish structures that were passed to
1653 * "GNUNET_FS_share_start" already. When called on a directory, 1653 * "GNUNET_FS_publish_start" already. When called on a directory,
1654 * this function will FIRST call "proc" with information about 1654 * this function will FIRST call "proc" with information about
1655 * the directory itself and then for each of the files in the 1655 * the directory itself and then for each of the files in the
1656 * directory (but not for files in subdirectories). When called 1656 * directory (but not for files in subdirectories). When called
@@ -1668,8 +1668,8 @@ GNUNET_FS_file_information_inspect (struct GNUNET_FS_FileInformation *dir,
1668 1668
1669 1669
1670/** 1670/**
1671 * Destroy share-structure. Clients should never destroy share 1671 * Destroy publish-structure. Clients should never destroy publish
1672 * structures that were passed to "GNUNET_FS_share_start" already. 1672 * structures that were passed to "GNUNET_FS_publish_start" already.
1673 * 1673 *
1674 * @param fi structure to destroy 1674 * @param fi structure to destroy
1675 * @param cleaner function to call on each entry in the structure 1675 * @param cleaner function to call on each entry in the structure
@@ -1684,21 +1684,21 @@ GNUNET_FS_file_information_destroy (struct GNUNET_FS_FileInformation *fi,
1684 1684
1685 1685
1686/** 1686/**
1687 * Share a file or directory. 1687 * Publish a file or directory.
1688 * 1688 *
1689 * @param h handle to the file sharing subsystem 1689 * @param h handle to the file sharing subsystem
1690 * @param ctx initial value to use for the '*ctx' 1690 * @param ctx initial value to use for the '*ctx'
1691 * in the callback (for the GNUNET_FS_STATUS_SHARE_START event). 1691 * in the callback (for the GNUNET_FS_STATUS_PUBLISH_START event).
1692 * @param fi information about the file or directory structure to share 1692 * @param fi information about the file or directory structure to publish
1693 * @param namespace namespace to share the file in, NULL for no namespace 1693 * @param namespace namespace to publish the file in, NULL for no namespace
1694 * @param nid identifier to use for the shared content in the namespace 1694 * @param nid identifier to use for the publishd content in the namespace
1695 * (can be NULL, must be NULL if namespace is NULL) 1695 * (can be NULL, must be NULL if namespace is NULL)
1696 * @param nuid update-identifier that will be used for future updates 1696 * @param nuid update-identifier that will be used for future updates
1697 * (can be NULL, must be NULL if namespace or nid is NULL) 1697 * (can be NULL, must be NULL if namespace or nid is NULL)
1698 * @return context that can be used to control the share operation 1698 * @return context that can be used to control the publish operation
1699 */ 1699 */
1700struct GNUNET_FS_ShareContext * 1700struct GNUNET_FS_PublishContext *
1701GNUNET_FS_share_start (struct GNUNET_FS_Handle *h, 1701GNUNET_FS_publish_start (struct GNUNET_FS_Handle *h,
1702 void *ctx, 1702 void *ctx,
1703 const struct GNUNET_FS_FileInformation *fi, 1703 const struct GNUNET_FS_FileInformation *fi,
1704 struct GNUNET_FS_Namespace *namespace, 1704 struct GNUNET_FS_Namespace *namespace,
@@ -1708,13 +1708,13 @@ GNUNET_FS_share_start (struct GNUNET_FS_Handle *h,
1708 1708
1709/** 1709/**
1710 * Stop an upload. Will abort incomplete uploads (but 1710 * Stop an upload. Will abort incomplete uploads (but
1711 * not remove blocks that have already been shared) or 1711 * not remove blocks that have already been publishd) or
1712 * simply clean up the state for completed uploads. 1712 * simply clean up the state for completed uploads.
1713 * 1713 *
1714 * @param sc context for the upload to stop 1714 * @param sc context for the upload to stop
1715 */ 1715 */
1716void 1716void
1717GNUNET_FS_share_stop (struct GNUNET_FS_ShareContext *sc); 1717GNUNET_FS_publish_stop (struct GNUNET_FS_PublishContext *sc);
1718 1718
1719 1719
1720/** 1720/**
@@ -1840,9 +1840,8 @@ typedef void (*GNUNET_FS_NamespaceInfoProcessor) (void *cls,
1840 * @param h handle to the file sharing subsystem 1840 * @param h handle to the file sharing subsystem
1841 * @param cb function to call on each known namespace 1841 * @param cb function to call on each known namespace
1842 * @param cb_cls closure for cb 1842 * @param cb_cls closure for cb
1843 * @return GNUNET_SYSERR on error, otherwise the number of pseudonyms in list
1844 */ 1843 */
1845int 1844void
1846GNUNET_FS_namespace_list (struct GNUNET_FS_Handle *h, 1845GNUNET_FS_namespace_list (struct GNUNET_FS_Handle *h,
1847 GNUNET_FS_NamespaceInfoProcessor cb, 1846 GNUNET_FS_NamespaceInfoProcessor cb,
1848 void *cb_cls); 1847 void *cb_cls);