X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;ds=sidebyside;f=src%2Fxdr_rec.c;h=2aca623a98ba45432bfe300b37bd7e4b542c4308;hb=1b2274af88fc30a25f43be91e177cea041958e48;hp=4e815d787e10b54286fe9db79ad5c1fbc6687c7f;hpb=05e779c3a20dce57d28e3303a7b318d118902d51;p=platform%2Fupstream%2Flibtirpc.git diff --git a/src/xdr_rec.c b/src/xdr_rec.c index 4e815d7..2aca623 100644 --- a/src/xdr_rec.c +++ b/src/xdr_rec.c @@ -64,7 +64,6 @@ #include #include #include "rpc_com.h" -#include static bool_t xdrrec_getlong(XDR *, long *); static bool_t xdrrec_putlong(XDR *, const long *); static bool_t xdrrec_getbytes(XDR *, char *, u_int); @@ -330,22 +329,22 @@ xdrrec_getpos(xdrs) RECSTREAM *rstrm = (RECSTREAM *)xdrs->x_private; off_t pos; - pos = lseek((int)(u_long)rstrm->tcp_handle, (off_t)0, 1); - if (pos != -1) - switch (xdrs->x_op) { + switch (xdrs->x_op) { - case XDR_ENCODE: - pos += rstrm->out_finger - rstrm->out_base; - break; + case XDR_ENCODE: + pos = rstrm->out_finger - rstrm->out_base + - BYTES_PER_XDR_UNIT; + break; - case XDR_DECODE: - pos -= rstrm->in_boundry - rstrm->in_finger; - break; + case XDR_DECODE: + pos = rstrm->in_boundry - rstrm->in_finger + - BYTES_PER_XDR_UNIT; + break; - default: - pos = (off_t) -1; - break; - } + default: + pos = (off_t) -1; + break; + } return ((u_int) pos); }