getting current UNIX uid
Hello, I am trying to get the user that is running the scripts uid, I have had a look at the pwd module and it does not appear to offer that functionality. Is there any way within python to get that information ? Regards, Johhny -- http://mail.python.org/mailman/listinfo/python-list
Python password display
Hello, I am currently writing some python code which requires the use of a password. Currently I am using the raw_input function to take the users input in and use it. One problem with that is the password is displayed in clear text on the console of the server. I would like to work on a way around that. Is there any built in method to do that or any how-to's around the Internet / Advice that I could research? Regards, Johhny. -- http://mail.python.org/mailman/listinfo/python-list
regular expressions and matches
Hello, I have recently written a small function that will verify that an IP address is valid. ==SNIP== import re ipAddress = raw_input('IP Address : ') def validateIP(ipAddress): ipRegex = r"^([01]?\d\d?|2[0-4]\d|25[0-5])\.([01]?\d\d?|2[0-4]\d|25[0-5])\.([01]?\d\d?|2[0-4]\d|25[0-5])\.([01]?\d\d?|2[0-4]\d|25[0-5])$" re_ip = re.compile(ipRegex) match = re_ip.match(ipAddress) if not match: print "an error has occured with ipAddress" return match else: return match print(validateIP(ipAddress)) ==SNIP== I was having issues trying to get my code working so that I could pass the IP addresses and it would return a true or false. When it matches I get something that looks like this. python ip_valid.py IP Address : 192.158.1.1 <_sre.SRE_Match object at 0xb7de8c80> As I am still attempting to learn python I am interested to know how I could get the above to return a true or false if it matches or does not match the IP address. I would also like to expand that so that if the IP is wrong it requests the IP address again and recalls the function. I have done the same thing in php very easily but python appears to be getting the better of me. Any assistance and advice would be greatly appreciated. Regards, Johhny -- http://mail.python.org/mailman/listinfo/python-list
Re: replacing \n characters in a hash
Hello All, thanks for your help. I got it working and learnt some more things which is always great. Your assitance has been very useful. Regards, Johhny -- http://mail.python.org/mailman/listinfo/python-list
Re: replacing \n characters in a hash
Hello, In response to that the output is this : 'Updated libc-client packages that fix a buffer overflow issue are now\navailable.\n\nThis update has been rated as having moderate security impact by the Red\nHat Security Response Team.' -- http://mail.python.org/mailman/listinfo/python-list
Re: replacing \n characters in a hash
Hello, Here is the code (minus my details section). server = xmlrpclib.ServerProxy(url) session = server.auth.login(username,password) #functions. def getErrata(): channel_label = 'rhel-i386-as-4' errata = server.channel.software.list_errata(session,channel_label,start_date,end_date) return errata def getPackage(advisory): Package = server.errata.get_details(session,advisory) return Package errata = getErrata() for vals in errata: print "%s\t\t%s\t\t%s\t%s\t%s" % (vals['errata_advisory'],vals['errata_issue_date'],vals['errata_update_date'],vals['errata_last_modified_date'],vals['errata_type'],) errata_info = getPackage(vals['errata_advisory'],) print errata_info['errata_topic'] errata_package = errata_info['errata_topic'] print getPackage(vals['errata_advisory']) I have not got any of the section in to replace the \n's as I was trying to work out why its not seeing what I thought was a string as a dict. -- http://mail.python.org/mailman/listinfo/python-list
Re: replacing \n characters in a hash
Hello, Thankyou for your response, If I check that the errara_package value is with a print I get the following. ===SNIP=== Updated libc-client packages that fix a buffer overflow issue are now available. This update has been rated as having moderate security impact by the Red Hat Security Response Team. ===SNIP=== Notice that it has formatted the output with the \n's. So i dont understand why its reporting as a dictionary rather than just the string. -- http://mail.python.org/mailman/listinfo/python-list
replacing \n characters in a hash
Hello, I am currently trying to write some scripts to get information from the xmlrpc for redhat network. One of the issues I am having is trying to strip off the special characters in the hash that is returned. Here is an example of the information returned within the hash : ===SNIP=== {'errata_update_date': '2005-12-06', 'errata_topic': 'Updated libc-client packages that fix a buffer overflow issue are now\navailable.\n\nThis update has been rated as having moderate security impact by the Red\nHat Security Response Team.', 'errata_type': 'Security Advisory', 'errata_notes': '', 'errata_synopsis': 'Moderate: libc-client security update', 'errata_references': '', 'errata_last_modified_date': '2006-01-25 10:37:24', 'errata_issue_date': '2005-12-06', 'errata_description': 'C-client is a common API for accessing mailboxes.\n\nA buffer overflow flaw was discovered in the way C-client parses user\nsupplied mailboxes. If an authenticated user requests a specially crafted\nmailbox name, it may be possible to execute arbitrary code on a server that\nuses C-client to access mailboxes. The Common Vulnerabilities and Exposures\nproject has assigned the name CVE-2005-2933 to this issue.\n\nAll users of libc-client should upgrade to these updated packages, which\ncontain a backported patch that resolves this issue.'} ===SNIP=== What I would like to do is remove the \n characters from 'errata_topic'. Which is this section of the hash. Updated libc-client packages that fix a buffer overflow issue are now\navailable.\n\nThis update has been rated as having moderate security impact by the Red\nHat Security Response Team. What I had attempted to do is use the replace() function but it consistantly comes up with the following errors: Traceback (most recent call last): File "rhn_errata.py", line 63, in ? errata_package = errata_package.strip('\n','') AttributeError: 'dict' object has no attribute 'strip' where errata_package is JUST the errata_topic hash value. Any advice would be great on how to do that. Regards, Johhny -- http://mail.python.org/mailman/listinfo/python-list
accessing hardware information using python
Hello, I am currently looking to write a utility in python that will monitor the statis of a RAID card within linux. The card in Question is the LSI SAS1064 as the tools provided by the vendor to monitor the software does not suit our requirements. However I am unsure how to convert dmidecode information like so : Handle 0x0025 DMI type 10, 6 bytes. On Board Device Information Type: SCSI Controller Status: Enabled Description: LSI serial-ATA #1 Into anything that I can use to extract information using python? Does anyone have any ideas or any recommended reading about this matter? Regards, Johhny -- http://mail.python.org/mailman/listinfo/python-list
Re: reading files
Thanks for your assistance, Is it proper practice in python to flush any memory when you exit? for example Ive read the file into memory, when I close the file do I also have to flush any memory allocations ? -- http://mail.python.org/mailman/listinfo/python-list
reading files
Hello All, I am working my way through learning python as a language. I am having some issues with something that looks right and does not work. I am trying to get myself more familure with reading files. Based on the tutorials at www.python.org This "should" work. but im not sure what the issue is. ===SNIP=== import string vsftpd=open('vsftpd.conf', 'r') print vsftpd vsftpd.read() vsftpd.readlines() vsftpd.close() ===SNIP=== When I check the permissions to ensure they are correct I get the following. stat vsftpd.conf File: `vsftpd.conf' Size: 4137Blocks: 16 IO Block: 131072 regular file Device: 802h/2050d Inode: 51010 Links: 1 Access: (0644/-rw-r--r--) Uid: ( 1000/ testing) Gid: ( 1000/ testing) Access: 2005-12-19 10:21:04.0 + Modify: 2005-12-16 12:34:00.0 + Change: 2005-12-16 12:34:00.0 + When I run the script I get the following: python reading_file.py Does anyone have any advice on this issue at all. Regards, Johhny. -- http://mail.python.org/mailman/listinfo/python-list
Re: newbie to python
Thankyou, I appreciate your help. I did not realise that python would behave that way. -- http://mail.python.org/mailman/listinfo/python-list
text manipulation
Hello, I am trying to write a script in python (to replace a perl script with limited functionality). Now I have some issues. Currently I am using the perl to load the file then regex parse certain lines to remove characters (uncomment lines and change variables). I would like to take that into the python script. I have had a look at the module "string" and I dont think its what Im looking for. Here is an example of some text I would like to manipulate #comment here #user_defined_variable = no # I would like to make that #comment here user_defined_variable = yes # With perl/sed Its very easy, However Im having issues to do it in python. Any advice would be great. Regards, Johhny. -- http://mail.python.org/mailman/listinfo/python-list
Re: newbie to python
Hello, Here is the script then the problem. cat testing.py import crypt import random, string def getsalt(chars = string.letters + string.digits): return random.choice(chars) + random.choice(chars) username = raw_input('password : ') print crypt.crypt(username,getsalt()) python testing.py password : testing Traceback (most recent call last): File "testing.py", line 1, in ? import crypt File "/home/testing/scripts/crypt.py", line 4, in ? TypeError: 'module' object is not callable -- http://mail.python.org/mailman/listinfo/python-list
Re: newbie to python
Hello, If I go into the python shell and type help("modules") It does show that crypt is there. However Im unsure if that means that there is help or its got the module installed. >From a dpkg --list python* I have ii python2.4-crypto 2.0+dp1-2ubuntu1 cryptographic algorithms and protocols for Python Which means it should work. However Im not really getting anything from it. Which makes me wonder. -- http://mail.python.org/mailman/listinfo/python-list