I wanted to make some flexinodes not viewable to certain user groups, but did not want to use an additional module like node access. Therefore, i modified flexinode.module, and added in the perm function:
$perms[] = 'view '. $ctype->name .' content';
Then I added in the access function:
if ($op == 'view') {
return user_access('view '. flexinode_node_name($node) .' content');
}
Then finally changed the menu hook user access calls like so:
$items[] = array('path' => 'flexinode/list', 'title' => t('list view'),
'callback' => 'flexinode_page_list', 'access' => user_access('view '. $ctype->name .' content'),
'type' => MENU_CALLBACK);
$items[] = array('path' => 'flexinode/table', 'title' => t('tabular view'),
'callback' => 'flexinode_page_table', 'access' => user_access('view '. $ctype->name .' content'),
'type' => MENU_CALLBACK);
$items[] = array('path' => 'flexinode/search', 'title' => t('search'),
'callback' => 'flexinode_page_search_form', 'access' => user_access('view '. $ctype->name .' content'),
'type' => MENU_CALLBACK);
$items[] = array('path' => 'flexinode/feed', 'title' => t('rss feed'),
'callback' => 'flexinode_feed', 'access' => user_access('view '. $ctype->name .' content'),
'type' => MENU_CALLBACK);
where instead of user_access('access content')... it invokes the view permission.