Navigation


Changeset 767:c47c16436f71 in freeDiameter for extensions/dbg_interactive


Ignore:
Timestamp:
Oct 24, 2011, 6:43:32 AM (13 years ago)
Author:
Sebastien Decugis <sdecugis@nict.go.jp>
Branch:
default
Phase:
public
Message:

Added a limit on fifo queues to avoid memory exaustion when messages are received faster than handled

File:
1 edited

Legend:

Unmodified
Added
Removed
  • extensions/dbg_interactive/queues.i

    r741 r767  
    4242
    4343%extend fifo {
    44         fifo() {
     44        fifo(int max = 0) {
    4545                struct fifo * q = NULL;
    46                 int ret = fd_fifo_new(&q);
     46                int ret = fd_fifo_new(&q, max);
    4747                if (ret != 0) {
    4848                        DI_ERROR(ret, NULL, NULL);
     
    147147                ret = fd_fifo_tryget($self, &obj);
    148148                if (ret == EWOULDBLOCK) {
    149                         Py_XINCREF(Py_None);
     149                        Py_INCREF(Py_None);
    150150                        return Py_None;
    151151                }
     
    182182                ret = fd_fifo_timedget($self, &obj, &ts);
    183183                if (ret == ETIMEDOUT) {
    184                         Py_XINCREF(Py_None);
     184                        Py_INCREF(Py_None);
    185185                        return Py_None;
    186186                }
Note: See TracChangeset for help on using the changeset viewer.