+static int r_forward(RSET ct, RSFD rfd, void *buf,
+ int (*cmpfunc)(const void *p1, const void *p2),
+ const void *untilbuf)
+{
+ int i;
+ struct rset_pp_info *pinfo = (struct rset_pp_info *) rfd;
+#if RSET_DEBUG
+ logf (LOG_DEBUG, "rset_rsisamb_forward starting '%s' (ct=%p rfd=%p)",
+ ct->control->desc, ct,rfd);
+ key_logdump(LOG_DEBUG, untilbuf);
+ key_logdump(LOG_DEBUG, buf);
+#endif
+
+ i=isamb_pp_forward(pinfo->pt, buf, untilbuf);
+#if RSET_DEBUG
+ logf (LOG_DEBUG, "rset_rsisamb_forward returning %d",i);
+#endif
+ return i;
+}
+
+static void r_pos (RSFD rfd, double *current, double *total)