[ 
https://issues.apache.org/jira/browse/TS-14?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12884525#action_12884525
 ] 

Leif Hedstrom commented on TS-14:
---------------------------------

In addition to INKfread() mentioned above, these are also candidates for 
getting their prototypes fixed:

  inkapi void *_INKmalloc(unsigned int size, const char *path);
  inkapi void *_INKrealloc(void *ptr, unsigned int size, const char *path);
  inkapi char *_INKstrdup(const char *str, int length, const char *path);
  inkapi void _INKfree(void *ptr);

  inkapi int INKfwrite(INKFile filep, const void *buf, int length);
  inkapi char *INKfgets(INKFile filep, char *buf, int length);

  inkapi INKVIO INKVConnRead(INKVConn connp, INKCont contp, INKIOBuffer bufp, 
int nbytes);
  inkapi INKVIO INKVConnWrite(INKVConn connp, INKCont contp, INKIOBufferReader 
readerp, int nbytes);

  inkapi INKReturnCode INKVConnCacheObjectSizeGet(INKVConn connp, int 
*obj_size);


  inkapi int INKVIONBytesGet(INKVIO viop);
  inkapi INKReturnCode INKVIONBytesSet(INKVIO viop, int nbytes);
  inkapi int INKVIONDoneGet(INKVIO viop);
  inkapi INKReturnCode INKVIONDoneSet(INKVIO viop, int ndone);
  inkapi int INKVIONTodoGet(INKVIO viop);

  inkapi INKReturnCode INKIOBufferWaterMarkGet(INKIOBuffer bufp, int 
*water_mark);
  inkapi INKReturnCode INKIOBufferWaterMarkSet(INKIOBuffer bufp, int 
water_mark);
  inkapi int INKIOBufferCopy(INKIOBuffer bufp, INKIOBufferReader readerp, int 
length, int offset);

  inkapi int INKIOBufferWrite(INKIOBuffer bufp, const void *buf, int length);
  inkapi INKReturnCode INKIOBufferProduce(INKIOBuffer bufp, int nbytes);
  inkapi const char *INKIOBufferBlockReadStart(INKIOBufferBlock blockp, 
INKIOBufferReader readerp, int *avail);
  inkapi char *INKIOBufferBlockWriteStart(INKIOBufferBlock blockp, int *avail);
  inkapi int INKIOBufferReaderAvail(INKIOBufferReader readerp);

  inkapi int INKAIONBytesGet(void* data);


There were also some deprecated APIs that are 'wrong', but we should not modify 
those (ever).

> InkAPI is not 64-bit clean
> --------------------------
>
>                 Key: TS-14
>                 URL: https://issues.apache.org/jira/browse/TS-14
>             Project: Traffic Server
>          Issue Type: Bug
>          Components: InkAPI
>    Affects Versions: 2.0.0a
>         Environment: x86_64 linux
>            Reporter: John Plevyak
>             Fix For: 2.1.2
>
>
> This is different than the 64-bit port in that it effects the public API.  In 
> particular there are functions which use 'int' where they should be using 
> other types for things like sizes which could exceed 2^32, the 'int' size 
> even on 64-bit linux.  Specifically:
> api/include/InkAPI.h:  inkapi int INKfread(INKFile filep, void *buf, int 
> length);
> But a full review of the API should be conducted and the types updated.  In 
> this case inku64, ink_off_t or most likely size_t would
> be more appropriate.  All of these are 64-bit on 64-bit linux.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to