* config.c: Added audioop to lists.

* Makefile: change default source directory
* socketmodule.c: added getsockname and getpeername
* bltinmodule.c: corrected typo in type() error message
* Added new built-in functions str() and repr(): repr(x) == `x`;
  str(x) == x if x is a string, otherwise str(x) == repr(x).
* Added joinfields to stropmodule.c (string.join calls joinfields now)
This commit is contained in:
Guido van Rossum 1992-11-26 08:54:07 +00:00
parent df9320f8bc
commit c89705d697
4 changed files with 152 additions and 1 deletions

View file

@ -57,6 +57,8 @@ Socket methods:
- s.getsockopt(level, optname) --> flag
- s.bind(sockaddr) --> None
- s.connect(sockaddr) --> None
- s.getsockname() --> sockaddr
- s.getpeername() --> sockaddr
- s.listen(n) --> None
- s.makefile(mode) --> file object
- s.recv(nbytes) --> string
@ -564,6 +566,50 @@ sock_fileno(s, args)
}
/* s.getsockname() method */
static object *
sock_getsockname(s, args)
sockobject *s;
object *args;
{
char addrbuf[256];
int addrlen, res;
if (!getnoarg(args))
return NULL;
if (!getsockaddrlen(s, &addrlen))
return NULL;
BGN_SAVE
res = getsockname(s->sock_fd, (struct sockaddr *) addrbuf, &addrlen);
END_SAVE
if (res < 0)
return socket_error();
return makesockaddr((struct sockaddr *) addrbuf, addrlen);
}
/* s.getpeername() method */
static object *
sock_getpeername(s, args)
sockobject *s;
object *args;
{
char addrbuf[256];
int addrlen, res;
if (!getnoarg(args))
return NULL;
if (!getsockaddrlen(s, &addrlen))
return NULL;
BGN_SAVE
res = getpeername(s->sock_fd, (struct sockaddr *) addrbuf, &addrlen);
END_SAVE
if (res < 0)
return socket_error();
return makesockaddr((struct sockaddr *) addrbuf, addrlen);
}
/* s.listen(n) method */
static object *
@ -753,6 +799,8 @@ static struct methodlist sock_methods[] = {
{"close", sock_close},
{"connect", sock_connect},
{"fileno", sock_fileno},
{"getsockname", sock_getsockname},
{"getpeername", sock_getpeername},
{"listen", sock_listen},
{"makefile", sock_makefile},
{"recv", sock_recv},