A clone of btpd with my configuration changes.
Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

28 linhas
761 B

  1. #ifndef BTPD_STREAM_H
  2. #define BTPD_STREAM_H
  3. typedef int (*fdcb_t)(const char *, int *, void *);
  4. typedef void (*hashcb_t)(uint32_t, uint8_t *, void *);
  5. struct bt_stream {
  6. struct metainfo *meta;
  7. fdcb_t fd_cb;
  8. void *fd_arg;
  9. unsigned index;
  10. off_t t_off;
  11. off_t f_off;
  12. int fd;
  13. };
  14. int bts_open(struct bt_stream **res, struct metainfo *meta, fdcb_t fd_cb,
  15. void *fd_arg);
  16. int bts_get(struct bt_stream *bts, off_t off, uint8_t *buf, size_t len);
  17. int bts_put(struct bt_stream *bts, off_t off, const uint8_t *buf, size_t len);
  18. int bts_close(struct bt_stream *bts);
  19. int bts_sha(struct bt_stream *bts, off_t start, off_t length, uint8_t *hash);
  20. int bts_hashes(struct metainfo *meta, fdcb_t fd_cb, hashcb_t hash_cb,
  21. void *arg);
  22. #endif