-void *solv_chksum_create(Id type);
-void *solv_chksum_create_clone(void *handle);
-void *solv_chksum_create_from_bin(Id type, const unsigned char *buf);
-void solv_chksum_add(void *handle, const void *data, int len);
-Id solv_chksum_get_type(void *handle);
-int solv_chksum_isfinished(void *handle);
-const unsigned char *solv_chksum_get(void *handle, int *lenp);
-void *solv_chksum_free(void *handle, unsigned char *cp);
+struct _Chksum;
+typedef struct _Chksum Chksum;
+
+Chksum *solv_chksum_create(Id type);
+Chksum *solv_chksum_create_clone(Chksum *chk);
+Chksum *solv_chksum_create_from_bin(Id type, const unsigned char *buf);
+void solv_chksum_add(Chksum *chk, const void *data, int len);
+Id solv_chksum_get_type(Chksum *chk);
+int solv_chksum_isfinished(Chksum *chk);
+const unsigned char *solv_chksum_get(Chksum *chk, int *lenp);
+void *solv_chksum_free(Chksum *chk, unsigned char *cp);