dc6f74d269Add tools to manipulate `file-information` objects, and a few other things. * common.scm: add the constant `%time-relative-forever`. * container/metadata.scm: add `#:filename` and `#:narinfo` meta-types. * fs.scm: add tools to create and manipulate `file-information` objects: `file-information-add!`, `file-information-iterate`, `file->file-information` and `directory->file-information`, remove `make-file-information`. * tests/fs.scm: test those functions a little.
Rémi Birot-Delrue
2015-08-21 20:50:56 +0200
2304d664bbMinor modifications to get all examples working. * binding-utils.scm: add `and=>%` (`and=>` for foreign pointers). * fs/progress-info.scm: bug fix: on '(#:publish #:complete) do not assert any more there’s a SKS URI (we don’t always publish in a namespace). * examples/search.scm: add a one-line help message. * examples/search-ns.scm, examples/publish.scm: typos.
Rémi Birot-Delrue
2015-08-12 20:17:58 +0200
cd20d8d6d0Add a record type for GNUNET_FS_ProgressInfo and a few tests. * progress-info.scm: add a record type for `GNUNET_FS_ProgressInfo` and alter `parse-c-progress-info` to handle it. * fs.scm: - correct `make-file-information`; - deprecate directory-scan (too many bugs to fix, `make-file-information will` do for now); - replace `*block-options*` with `make-block-options`; - update `procedure->*` functions to use `parse-c-progress-info`. * examples/*.scm: follow modifications on fs.scm. * tests/progress-info.scm: add a fake progress-info to test `parse-c-progress-info`. * tests/fs.scm: add a small test for `make-file-information`.
Rémi Birot-Delrue
2015-08-12 19:31:27 +0200
5581107a9dSmall typo and improvements (add a few time management functions). * common.scm: - add `bool->int` and `int->bool`; - add `time-rel`, `current-time`, `time-absolute->string`, and `time-relative->absolute`. * uri.scm: minor typo and add LOC URIs to `uri-file-size`.
Rémi Birot-Delrue
2015-08-12 19:25:14 +0200
9cef3b7d43Code cleaning: various improvements and bug fixes. * identity.scm: `open-identity-service` now throws an exception on failure. * binding-utils.scm: just add `destructuring-bind`. * common.scm: `time-rel` now throws an exception instead of returning a meaningless negative result; add `setup-log`. * container/metadata.scm: `metadata-set!` now throws an exception on error. * tests/container-metadata.scm: add tests for `metadata-copy`, `metadata-clear`, `metadata-equal?` and `add-publication-date!`
Rémi Birot-Delrue
2015-08-10 19:18:22 +0200
51a4fd3496Remove `set-next-task!`, as the corresponding functions have been removed from GNUnet.
Rémi Birot-Delrue
2015-08-10 19:09:22 +0200
cb2028f885Complete the container/metadata bindings.
Rémi Birot-Delrue
2015-08-06 16:44:52 +0200
5259c5c20aAdd `close-filesharing-service` and dynamic allocation in `open-filesharing-handle`.
Rémi Birot-Delrue
2015-08-03 17:01:54 +0200
12e8a31b23Add `time-rel` to replace all ad-hoc time calculations.
Rémi Birot-Delrue
2015-08-03 15:57:09 +0200
ff8e19b523Rewrite of examples/publish.scm, small bug fixes and typos. * examples/publish.scm: rewritten to correctly handle namespaces. * gnu/gnunet/binding-utils.scm: add `or%`. * gnu/gnunet/fs.scm: bug fix: `start-*` function throw an error instead of returning %null-pointer. * gnu/gnunet/identity.scm: typo.
Rémi Birot-Delrue
2015-08-03 12:38:31 +0200
8fce653b32Add `examples/identity.scm`, `examples/identity-bis.scm`, `examples/search-ns.scm`, and a few minor modifications. * examples/search-ns.scm: a basic tool to search namespaces. * examples/identity.scm: a basic tool to list egos. * examples/identity-bis.scm: idem, but using `start-identity-lookup`. * fs/uri.scm: `wrap-uri` throws an `invalid-arg` exception when given a null pointer. * tests/uri.scm: c.f. ↑ * configuration.scm: add `configuration-value-set?`. * identity.scm: add `ecdsa-public-key->string`.
Rémi Birot-Delrue
2015-07-31 12:10:34 +0200
ac1479fa17Small bug fixes and add publishing in namespaces for examples/publish.scm * common.scm: add `gnunet-id-ffi` (FFI for libgnunetidentity). * identity.scm: replace `define-gnunet-fs` with `define-gnunet-id`. * fs.scm: corrects a bug in `start-publish` (gave `GNUNET_FS_publish_start` a pointer to the ego in place of a pointer to its private key). * examples/publish.scm: add handling of namespaces and replace simple global variables with parameters.
Rémi Birot-Delrue
2015-07-24 21:31:42 +0200
96048086c6Bind GNUNET_FS_IDENTITY_* functions and add support for publishing in namespaces. * identity.scm: complete bindings of GNUNET_FS_IDENTITY * fs.scm: add support for egos/namespaces to `start-publish` * binding-utils: remove the useless import of `assert`
Rémi Birot-Delrue
2015-07-21 19:25:04 +0200
8f48b792a2Add draft support for indexing/publication. * fs.scm: - add a `<file-information>` type and associated functions (`wrap-file-information`, `unwrap-file-information`, and `make-file-information`); - add incomplete bindings to `GNUNET_FS_directory_scan_*` functions (`start-directory-scan`, `stop-directory-scan`, `directory-scanner-result`) - add `share-tree->file-information` - add `start-publish` and `stop-publish` * examples/publish.scm: a very simple and ugly `gnunet-publish` clone.
Rémi Birot-Delrue
2015-07-21 13:03:07 +0200
6fc73cee9bAdd a few utility functions. * binding-utils.scm: add `pointer->string*`. * common.scm: add `bool->int` and `int->bool`, two functions to easily convert `gnunet-ok`, `gnunet-no`, `gnunet-syserror` values to booleans. * fs/uri.scm: export `keyword-list->string`. * tests/uri.scm: test `keyword-list->string`. * scheduler.scm: add `cancel-task!`.
Rémi Birot-Delrue
2015-07-21 13:01:28 +0200
7790951783Bind basic download functionalities * examples/download.scm: a loose `gnunet-download' clone. * system/foreign/unions.scm: add the possibility to specify #f as a union variant to get a padding of the size of the union. * gnu/gnunet/fs/progress-info.scm: just adapted to the modification to unions.scm. * gnu/gnunet/fs/uri.scm: add a few utility functions: `parse-uri' and `uri-file-size'. * gnu/gnunet/fs/fs.scm: add `start-download` and `stop-download`.
Rémi Birot-Delrue
2015-07-17 12:32:39 +0200
bee3516b83API cleanup: separates search and URI, adds sks URIs. * examples/search.scm: echo changes in the API; * gnu/gnunet/common.scm: add ecdsa-public-key? and string->data-pointer; * gnu/gnunet/fs.scm: replace search-service-open with open-filesharing-service, replace start-ksk-search with start-search; * gnu/gnunet/fs/uri.scm: add make-sks-uri-pointer and make-sks-uri; * tests/uri.scm: add tests for make-sks-uri-pointer and make-sks-uri.
Rémi Birot-Delrue
2015-07-03 13:39:56 +0200
c294a124d8Corrects a small bug.
Rémi Birot-Delrue
2015-07-03 00:00:48 +0200
c40fcacfbcReplaces the crappy “union handling” functions with better ones (inside “system/foreign/”); has the stub gnunet-search working.
Rémi Birot-Delrue
2015-06-24 13:20:18 +0200