[DFS] prepare for dfs_v2.0 (#7200)

* [DFS] prepare for dfs_v2. dfs_fd -> dfs_file; dfs_fnode -> dfs_vnode.

* [BSP] fix code analysis warning

* [smart] fix the pointer overflow.

* code format

* [smart] fix the lwp->lwp_obj checking.
This commit is contained in:
Bernard Xiong
2023-04-08 22:25:51 +08:00
committed by GitHub
parent 7fbe8bbd49
commit 9600b75b55
56 changed files with 494 additions and 480 deletions

View File

@@ -21,18 +21,18 @@
int dfs_net_getsocket(int fd)
{
int socket;
struct dfs_fd *_dfs_fd;
struct dfs_file *file;
_dfs_fd = fd_get(fd);
if (_dfs_fd == NULL) return -1;
file = fd_get(fd);
if (file == NULL) return -1;
if (_dfs_fd->vnode->type != FT_SOCKET) socket = -1;
else socket = (int)(size_t)_dfs_fd->vnode->data;
if (file->vnode->type != FT_SOCKET) socket = -1;
else socket = (int)(size_t)file->vnode->data;
return socket;
}
static int dfs_net_ioctl(struct dfs_fd* file, int cmd, void* args)
static int dfs_net_ioctl(struct dfs_file* file, int cmd, void* args)
{
int ret;
int socket = (int)(size_t)file->vnode->data;
@@ -46,7 +46,7 @@ static int dfs_net_ioctl(struct dfs_fd* file, int cmd, void* args)
return ret;
}
static int dfs_net_read(struct dfs_fd* file, void *buf, size_t count)
static int dfs_net_read(struct dfs_file* file, void *buf, size_t count)
{
int ret;
int socket = (int)(size_t)file->vnode->data;
@@ -60,11 +60,11 @@ static int dfs_net_read(struct dfs_fd* file, void *buf, size_t count)
return ret;
}
static int dfs_net_write(struct dfs_fd *file, const void *buf, size_t count)
static int dfs_net_write(struct dfs_file *file, const void *buf, size_t count)
{
int ret;
int socket = (int)(size_t)file->vnode->data;
ret = sal_sendto(socket, buf, count, 0, NULL, 0);
if (ret < 0)
{
@@ -73,7 +73,7 @@ static int dfs_net_write(struct dfs_fd *file, const void *buf, size_t count)
}
return ret;
}
static int dfs_net_close(struct dfs_fd* file)
static int dfs_net_close(struct dfs_file* file)
{
int socket;
int ret = 0;
@@ -86,9 +86,9 @@ static int dfs_net_close(struct dfs_fd* file)
return ret;
}
static int dfs_net_poll(struct dfs_fd *file, struct rt_pollreq *req)
static int dfs_net_poll(struct dfs_file *file, struct rt_pollreq *req)
{
extern int sal_poll(struct dfs_fd *file, struct rt_pollreq *req);
extern int sal_poll(struct dfs_file *file, struct rt_pollreq *req);
return sal_poll(file, req);
}

View File

@@ -25,7 +25,7 @@
#ifdef SAL_USING_AT
#ifdef SAL_USING_POSIX
static int at_poll(struct dfs_fd *file, struct rt_pollreq *req)
static int at_poll(struct dfs_file *file, struct rt_pollreq *req)
{
int mask = 0;
struct at_socket *sock;

View File

@@ -243,7 +243,7 @@ int inet_ioctlsocket(int socket, long cmd, void *arg)
}
#ifdef SAL_USING_POSIX
static int inet_poll(struct dfs_fd *file, struct rt_pollreq *req)
static int inet_poll(struct dfs_file *file, struct rt_pollreq *req)
{
int mask = 0;
struct lwip_sock *sock;

View File

@@ -80,7 +80,7 @@ struct sal_socket_ops
int (*getsockname)(int s, struct sockaddr *name, socklen_t *namelen);
int (*ioctlsocket)(int s, long cmd, void *arg);
#ifdef SAL_USING_POSIX
int (*poll) (struct dfs_fd *file, struct rt_pollreq *req);
int (*poll) (struct dfs_file *file, struct rt_pollreq *req);
#endif
};

View File

@@ -26,7 +26,7 @@ int accept(int s, struct sockaddr *addr, socklen_t *addrlen)
{
/* this is a new socket, create it in file system fd */
int fd;
struct dfs_fd *d;
struct dfs_file *d;
/* allocate a fd */
fd = fd_new();
@@ -41,7 +41,7 @@ int accept(int s, struct sockaddr *addr, socklen_t *addrlen)
if(d)
{
/* this is a socket fd */
d->vnode = (struct dfs_fnode *)rt_malloc(sizeof(struct dfs_fnode));
d->vnode = (struct dfs_vnode *)rt_malloc(sizeof(struct dfs_vnode));
if (!d->vnode)
{
/* release fd */
@@ -49,7 +49,7 @@ int accept(int s, struct sockaddr *addr, socklen_t *addrlen)
rt_set_errno(-ENOMEM);
return -1;
}
rt_memset(d->vnode, 0, sizeof(struct dfs_fnode));
rt_memset(d->vnode, 0, sizeof(struct dfs_vnode));
rt_list_init(&d->vnode->list);
d->vnode->type = FT_SOCKET;
@@ -61,7 +61,7 @@ int accept(int s, struct sockaddr *addr, socklen_t *addrlen)
d->vnode->size = 0;
d->pos = 0;
/* set socket to the data of dfs_fd */
/* set socket to the data of dfs_file */
d->vnode->data = (void *)(size_t)new_socket;
return fd;
@@ -99,7 +99,7 @@ int shutdown(int s, int how)
{
int error = 0;
int socket = -1;
struct dfs_fd *d;
struct dfs_file *d;
socket = dfs_net_getsocket(s);
if (socket < 0)
@@ -227,7 +227,7 @@ int socket(int domain, int type, int protocol)
/* create a BSD socket */
int fd;
int socket;
struct dfs_fd *d;
struct dfs_file *d;
/* allocate a fd */
fd = fd_new();
@@ -238,7 +238,7 @@ int socket(int domain, int type, int protocol)
return -1;
}
d = fd_get(fd);
d->vnode = (struct dfs_fnode *)rt_malloc(sizeof(struct dfs_fnode));
d->vnode = (struct dfs_vnode *)rt_malloc(sizeof(struct dfs_vnode));
if (!d->vnode)
{
/* release fd */
@@ -254,11 +254,11 @@ int socket(int domain, int type, int protocol)
}
#endif /* SAL_USING_AF_UNIX */
/* create socket and then put it to the dfs_fd */
/* create socket and then put it to the dfs_file */
socket = sal_socket(domain, type, protocol);
if (socket >= 0)
{
rt_memset(d->vnode, 0, sizeof(struct dfs_fnode));
rt_memset(d->vnode, 0, sizeof(struct dfs_vnode));
rt_list_init(&d->vnode->list);
/* this is a socket fd */
d->vnode->type = FT_SOCKET;
@@ -271,7 +271,7 @@ int socket(int domain, int type, int protocol)
d->vnode->size = 0;
d->pos = 0;
/* set socket to the data of dfs_fd */
/* set socket to the data of dfs_file */
d->vnode->data = (void *)(size_t)socket;
}
else
@@ -291,7 +291,7 @@ int closesocket(int s)
{
int error = 0;
int socket = -1;
struct dfs_fd *d;
struct dfs_file *d;
socket = dfs_net_getsocket(s);
if (socket < 0)

View File

@@ -1062,7 +1062,7 @@ int sal_ioctlsocket(int socket, long cmd, void *arg)
addr = (struct sockaddr *)&(ifr->ifr_ifru.ifru_addr);
sal_sockaddr_to_ipaddr(addr,&input_ipaddr);
netdev_set_ipaddr(sock->netdev,&input_ipaddr);
return 0;
return 0;
case SIOCGIFNETMASK:
addr_in = (struct sockaddr_in *)&(ifr->ifr_ifru.ifru_netmask);
@@ -1079,7 +1079,7 @@ int sal_ioctlsocket(int socket, long cmd, void *arg)
addr = (struct sockaddr *)&(ifr->ifr_ifru.ifru_netmask);
sal_sockaddr_to_ipaddr(addr,&input_ipaddr);
netdev_set_netmask(sock->netdev,&input_ipaddr);
return 0;
return 0;
case SIOCGIFHWADDR:
addr = (struct sockaddr *)&(ifr->ifr_ifru.ifru_hwaddr);
@@ -1088,7 +1088,7 @@ int sal_ioctlsocket(int socket, long cmd, void *arg)
case SIOCGIFMTU:
ifr->ifr_ifru.ifru_mtu = sock->netdev->mtu;
return 0;
return 0;
default:
break;
@@ -1098,7 +1098,7 @@ int sal_ioctlsocket(int socket, long cmd, void *arg)
}
#ifdef SAL_USING_POSIX
int sal_poll(struct dfs_fd *file, struct rt_pollreq *req)
int sal_poll(struct dfs_file *file, struct rt_pollreq *req)
{
struct sal_socket *sock;
struct sal_proto_family *pf;