summaryrefslogtreecommitdiffstatshomepage
path: root/unix/modos.c
diff options
context:
space:
mode:
authorNikita Nazarenko <nnazarenko@radiofid.ru>2014-12-10 13:31:35 +0300
committerDamien George <damien.p.george@gmail.com>2014-12-10 21:49:24 +0000
commitd51107927d53a80835195ba1ac97048c203f05f2 (patch)
treef01e458ba02a31ddf2e5308cbeff007976bb7ac7 /unix/modos.c
parent4140e19c8a00e247e11c9203bce9b82b6ae41486 (diff)
downloadmicropython-d51107927d53a80835195ba1ac97048c203f05f2.tar.gz
micropython-d51107927d53a80835195ba1ac97048c203f05f2.zip
unix: add unlink function to os module
Diffstat (limited to 'unix/modos.c')
-rw-r--r--unix/modos.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/unix/modos.c b/unix/modos.c
index 712c528b4d..b9a2810ba9 100644
--- a/unix/modos.c
+++ b/unix/modos.c
@@ -65,9 +65,22 @@ STATIC mp_obj_t mod_os_stat(mp_obj_t path_in) {
}
STATIC MP_DEFINE_CONST_FUN_OBJ_1(mod_os_stat_obj, mod_os_stat);
+STATIC mp_obj_t mod_os_unlink(mp_obj_t path_in) {
+ mp_uint_t len;
+ const char *path = mp_obj_str_get_data(path_in, &len);
+
+ int r = unlink(path);
+
+ RAISE_ERRNO(r, errno);
+
+ return mp_const_none;
+}
+STATIC MP_DEFINE_CONST_FUN_OBJ_1(mod_os_unlink_obj, mod_os_unlink);
+
STATIC const mp_map_elem_t mp_module_os_globals_table[] = {
{ MP_OBJ_NEW_QSTR(MP_QSTR___name__), MP_OBJ_NEW_QSTR(MP_QSTR__os) },
{ MP_OBJ_NEW_QSTR(MP_QSTR_stat), (mp_obj_t)&mod_os_stat_obj },
+ { MP_OBJ_NEW_QSTR(MP_QSTR_unlink),(mp_obj_t)&mod_os_unlink_obj},
};
STATIC MP_DEFINE_CONST_DICT(mp_module_os_globals, mp_module_os_globals_table);