Skip to content

Commit 2b53421

Browse files
committed
sig* functions
1 parent b42a903 commit 2b53421

1 file changed

Lines changed: 17 additions & 9 deletions

File tree

src/library.js

Lines changed: 17 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6063,18 +6063,26 @@ LibraryManager.library = {
60636063
},
60646064
sigemptyset: function(set) {
60656065
// int sigemptyset(sigset_t *set);
6066-
// TODO: Implement for real; don't hardcode offsets.
6067-
{{{ makeSetValue('set', '0', '0', 'i32') }}}
6068-
{{{ makeSetValue('set', '4', '0', 'i32') }}}
6069-
{{{ makeSetValue('set', '8', '0', 'i32') }}}
6070-
{{{ makeSetValue('set', '12', '0', 'i32') }}}
6066+
{{{ makeSetValue('set', '0', '0', 'i32') }}};
60716067
return 0;
60726068
},
6073-
sigfillset: 'sigemptyset',
6074-
sigdelset: 'sigemptyset',
6069+
sigfillset: function(set) {
6070+
{{{ makeSetValue('set', '0', '-1>>>0', 'i32') }}};
6071+
return 0;
6072+
},
6073+
sigaddset: function(set, signum) {
6074+
{{{ makeSetValue('set', '0', makeGetValue('set', '0', 'i32') + '| (1 << (signum-1))', 'i32') }}};
6075+
return 0;
6076+
},
6077+
sigdelset: function(set, signum) {
6078+
{{{ makeSetValue('set', '0', makeGetValue('set', '0', 'i32') + '& (~(1 << (signum-1)))', 'i32') }}};
6079+
return 0;
6080+
},
6081+
sigismember: function(set, signum) {
6082+
return {{{ makeGetValue('set', '0', 'i32') }}} & (1 << (signum-1));
6083+
},
60756084
sigaction: function(set) {
6076-
// int sigemptyset(sigset_t *set);
6077-
// TODO: Implement for real.
6085+
// TODO:
60786086
return 0;
60796087
},
60806088
sigprocmask: 'sigaction',

0 commit comments

Comments
 (0)